这几天看了Tinking in java 的书,看了集合这一章
list 和set 接口 实现了collection接口
map接口 能够生成collection接口
list 接口的实现类:(有序,保证所有的元素按照规定的顺序排列,list为collection提供了大量的方法,)
ArrayLIst:由数组后推得到,可以快速访问元素,但插入删除稍慢。
LinkedList:由双重循环链表方式实现,提供优化的顺序访问性能,可高效率地进行插入删除。
set接口实现类:(无序,不可重复),对象必须定义equals()方法。拥有与collection相同的接口。
HashSet::由散列表函数实现, 对象必须定义hashCode();
ArraySet:面向小的set,由数组后推得到的,创建和迭代所需付出的代价要小的多。(小型set,大小可决定使用何种set)
TreeSet:由“红-黑树”的后推得到的set。
map接口实现类:维持键值对的对应关系,以便通过键查找相应的值。
HashMap:基于散列表的实现(用来替代HashTable)。
ArrayMap:由ArrayList后推得到的Map,对反复的顺序提供了精确的控制。(小型的map)
eg:
Map可以作为HashMap 来实现,也可作为ArryaMap实现,
即:Map map=new HashMap(); Map map=new ArrayMap();