ArrayList and Vector are mainly from two aspects.
I. Synchronicity: vectors are thread-safe, that is, synchronous, while ArrayList is not secure, not synchronized.
Two. Data growth: When growth is needed, the vector defaults to the original one, while ArrayList is half the original.
On HashMap and Hashtable mainly from three aspects.
I. Historical reasons: Hashtable is based on the old dictionary class, HashMap is an implementation of the map interface introduced by Java 1.2
Two. Synchronicity: Hashtable is thread-safe, that is, synchronous, and HashMap is not secure, not synchronized.
Three. Value: Only HashMap can let you use NULL as the key or value of a table entry
Collection
├list
│├linkedlist
│├arraylist
│└vector
│└stack
└set
Map
├hashtable
├hashmap
└weakhashmap
Collection is the most basic set interface, and a collection represents a set of object, that is, the collection element (Elements)
Map provides a mapping of key to value