java容器类库一共只有两种主要类型:Collection 和Map
Collection和Map的区别在于窗口内每个“槽”所存储的元素个数不同。Collection类型中,每个“槽”只有一个元素;Map类型中,持有key-value关联像一个小型数据库。所有java容器类都可以自动调整自己的尺寸。
Collection的子类如下:
1.List:将以特定次序存储元素。所以取出来的顺序可能 和放入的顺序不同
------ArrayList:擅长随机访问元素
------LinkedList:插入、删除、移动元素方便,随机访问元素差
2.Set:每个值只能保存1个对象,不能含有重复元素(类似于集合,其实翻译成汉语就是集合)。
-------HashSet:使用散列函数
-------TreeSet:使用红黑树
-------LinkedHashSet:使用链表结合散列函数
3.Queue:先进先出的容器(对列)
Map的子类有以下3个:
HashMap;
HashTable;
TreeMap;
其它特征:
1.List、Set、Map将所有的对象一律视为Object类型
2.Collection、List、Set、Map都是接口,不能实例化。继承处它们的ArrayList、Vector、HashTable、HashMap、stack是具体class,这些才可被实例化。
3.Vector容器确切知道它所持有的对象隶属什么类别。Vector不进行边界检查
关于Collection
Collections是针对集合类的一个帮助类,它提供了一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。相当于对Array进行类似操作的类-------Arrays