1.首先判断存储的类型(一组对象{单列}或一组键值对{双列})
2.一组对象{单列}:Collection接口
允许重复;List
增删多:LinkedList{底层维护了一个双向链表}
改查多:ArrayList{底层维护Object类型的可变数组}
不允许重复:Set
无序:HashSet{底层是HashMap,维护一个哈希表 (数组+链表+红黑树)}
排序:TreeSet{利用有参构造器 对字符串进行自然排序(首字母的先后)或者按照字符串长度来排序}
插入和取出顺序一致:LinkedHashSet,维护数组+链表
3.一组键值对{双列}:Map
键无序:HashMap{底层:哈希表 jdk7:数组+链表 ,jdk8:数组+链表+红黑树}
键排序:TreeMap{同TreeSet一样 利用有参构造器 重写方法 进行自排序或按照字符串长度排序}
键插入和取出顺序一致:LinkedHashMap
读取文件:Properties