Collection接口

java集合框架
collection是集合中的根接口,没有实现类。
set接口继承了collection接口,不允许重复,使用自己内部的一个排列机制。
list接口继承了colection接口,允许重复,以元素安插的次讯进行排列,不会重新排列,提供索引方式访问。

ArryList类按一定顺序排列元素,当在头部或中间插入元素时,效率很低,但是索引检索效率极高,没有对线程的约束,多线程不建议使用。
LinkedList类,数据任意存放效率极高,检索效率较低,使用较少。
vector类,适用于多线程。
Stack类继承Vector,进栈和出栈操作使用方便。

HashSet类,内部排列顺序不可控制。
TreeSet类,内部的排列顺序将由用户自行进行定义。

HashSet和TreeSet操作可见下一篇文章:HashSet和TreeSet的使用与排列顺序的观察。

Map类

Map接口样品两个子类:HashMap和Hashtable
其中HashMap是非线程安全的,而Hashtable是线程安全的。多线程情况加尽量使用Hashtable,单线程情况下尽量使用HashMap效率较高。
俩者的区别如下图:
java集合框架

相关文章: