1. ArrayList、LinkedList和Vector;
ArrayList、LinkedList和Vector三者为List接口的实现类:
- ArrayList:作为List接口的主要实现类;线程不安全的,效率高;底层使用Object[] elementData存储
- LinkedList:对于频繁的插入、删除操作,使用此类效率比ArrayList高;底层使用双向链表存储
- Vector:作为List接口的古老实现类;线程安全的,效率低;底层使用Object[] elementData存储
2. HashMap 和 HashTable
HashMap 和 HashTable为set接口的实现类:
- HashMap:作为Map的主要实现类;线程不安全的,效率高;存储null的key和value
- Hashtable:作为古老的实现类;线程安全的,效率低;不能存储null的key和value
3. HashSet 和 TreeSet
HashSet 和 TreeSet为Map接口的实现类:
- HashSet:作为Set接口的主要实现类;线程不安全的;可以存储null值
- TreeSet:可以照添加对象的指定属性,进行排序。