Java基础之:集合选择
Java基础之:集合选择
我们将上图的所有集合已经介绍完了,那么在解决问题的时候,应该怎么去选择使用哪一个集合呢?
判断存储的类型是一组对象还是一组键值对
一组对象:Collection接口
允许重复:List
增删多:LinkedList [底层维护了一个双向链表]
改查多:ArrayList [底层维护 Object类型的可变数组]
不允许重复:Set
无序:HashSet [维护了一个哈希表 即(数组+链表/树)]
排序:TreeSet
插入和取出顺序一致:LinkedHashSet // 双向链表
一组键值对:Map
键无序:HashMap [底层是:哈希表 jdk7:数组+链表,jdk8: 数组+链表(红黑树)]
键排序:TreeMap
键插入和取出顺序一致:LinkedHashMap
读取文件 Properties