java容器类库一共有两种主要类型:Collection和Map。
分类图
Collection:
1.List:将以特定次序存储元素。
ArrayList:查询快,插入,删除,移动较慢
LinkedList:插入,删除,移动较快;查询较慢
Vector:1. Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于 线程的同步必然要影响性能,因此,ArrayList的性能比Vector好。
2。当Vector或ArrayList中的元素超过它的初始大小时,Vector会将它的容量翻倍,而ArrayList只增加50% 的大小,这样,ArrayList就有利于节约内存空间。
2.Set:每个值只能保存一个对象,不能含有重复的元素
HashSet:使用散列函数
TreeSet:使用红黑树
LinkedHashSet:使用链表结合散列函数
Map:
1.HashMap:没有分类或者排序,它允许一个null键或者多个null值
2.HashTable:类似与HashMap,但是它不允许null键或者null值。它也比HashMap慢,因为它是同步的
3.TreeMap:适用于按自然顺序或自定义顺序遍历键(key)。
遍历Map:
for (Map.Entry<String, Object> entry:map.entrySet()) { System.out.println(entry.getKey()+" =="+entry.getValue()); }