Can someone please confirm my assumption:
List:
ArrayList = Fast iteration / slow if there will be
alot of insertion and deletion (does this use FIFO (First In First Out) ?). Orderd (by index) but not sorted.
Vector =
Thread saftey, therefor fast iteration but slower than ArrayList.
Orderd not sorted.
LinkedList = Fast insertion and deletion, slower iteration than ArrayList and Vector. Orderd by index.
Set:
HashSet = Unique, no orders. Fast iteration if the hashCode method is eficiently implemented. Slower insertion and deletion.
LinkedHashSet = Fast insertion and deletion if the hashCode method is eficiently implemented, slower iteration, uses FIFO, not orderd.
TreeSet = Slower iteration and deletion (uses tree structure), uniquenes and sorted by natural order (unless supplied a comparable implementation)
Map:
HashMap = Uses Key/Value pair, fast iteration if the hashCode method is eficiently implemented, slower insertion and deletion.
Hashtable = Practically the same as the HashMap but uses thread saftey methods and allows NO null keys nor values.
LinkedHashMap = FIFO, fast insertion and deletion, slower iteration.
TreeMap = Sorted by natural order of the Keys, duplicates allowed. Slower iteration and insertion and deletion.
Is there any rule of thumb here, i.e: Doubly Linked Lists (LinkedList, LinkeHashSet, LinkedHashMap) are all fast at insertion and deletion but slower at iteration?
Please help, my exam is on Thursday.