容器包含List、ArrayList、Vector及Map、HashMap等;
ArrayList和HashMap是异步的,Vector和HashTable是同步的,所以Vector和HashTable是线程安全的,而 ArrayList和HashMap并不是线程安全的。因为同步需要花费机器时间,所以Vector和HashTable的执行效率要低于 ArrayList和HashMap。
Collection
├List 接口 │├LinkedList 链表 │├ArrayList 顺序结构 动态数组 类 │└Vector 向量 │ └Stack 栈 └Set Map ├Hashtable ├HashMap └WeakHashMap List接口
接口主要有List、Set、Queue和 Map。List 、Se t和Queue是 Collection接口的子接口。
实现主要是实现这些接口的具体类。如实现List 接口的ArrayList、LinkedList、Stack和Vector;实现Set接口的HashSet、TreeSet 和LinkedHashSet;实现Queue接口的PriorityQueue、SynchronousQueue等等;实现Map接口的 HashMap、TreeMap、Hashtable、Properties、WeakHashMap等等。
set没有序, list 有序。对于排序来说,是根据元素实现了comparable接口compareTo()方法来排序的。
map:treemap, hashmap,linkedhashmap,identityhashmap,weakhashmap,hashtable.
hashmap,hashtable效率大致相同,通常hashmap更快点,所以基本上取代了hashtable。treemap通常比hashmap慢,但treemap生成一个排好序的队列