1.先判断存储的类型(一组对象,或者是一组键对)
2.若为一组对象,则选择Collection接口
(1)若允许重复选List,
增删多:linkedList(底层维护一个双向链表)
改查多:ArrayList(底层维护Object可变数组)(多线程选择Vector,但效率会降 低)
(2)不允许重复选择Set:
无序:HashSet[底层是HashMap,维护了一个哈希表(数组+链表+红黑树)]
有序:TreeSet
插入和取出顺序一致:linkedHashSet(底层维护数组+双向链表)
3.一对键值对:Map
(1)键无序:HashMap(底层为哈希表)(HashTable线程安全)
(2)键排序:TreeMap
(3)键插入和取出顺序一致:linkedHashMap
(4)读取文件:Properties