集合框架-集合查阅的技巧
1、需要唯一吗?
(1)需要:Set
需要指定顺序:
需要:TreeSet
不需要:HashSet
但是想要一个和存储一致的顺序(有序):LinkedLinkedHashSet
(2)不需要:List
需要频繁增删吗?
需要:LinkedList
不需要:ArrayList
2、如何记录每一个容器的结构和所属体系呢?(看名字!)
List
|--ArrayList
|--LinkedList
Set
|--HashSet
|--TreeSet
后缀名就是该集合所属的体系。
前缀名就是该集合的数据结构。
(1)看到array:就要想到数组,就要想到查询快,有角标。
(2)看到link:就要想到链表,就要想到增删快,就要想到add get remove+first last的方法。
(3)看到hash:就要想到哈希表,就要想到唯一性,就要想到元素需要覆盖hashCode方法和equals方法。
(4)看到tree:就要想到二叉树,就要想到排序,就要想到两个接口:Comparable Comparator。
而且这些通用的集合容器都是不同步的。