集合的选择
1、先判断存储的类型是单列还是双列
单列对象:Collection
- 允许重复:List
- 增删多:LinkedList【底层维护了一个双向链表】
- 改查多:ArrayList【底层维护Object类型的可变数组】
- 不允许重复:Set
- 无序:HashSet【底层是HashMap,维护了一个哈希表(数组+链表+红黑树)】
- 有序:TreeSet【底层是TreeMap,默认根据Key的首字母大小排序,能自定义排序方式】
- 插入与取出顺序一致:LinkedHashSet【底层是LinkedHashMap,维护数组+双向链表】
双列键值对:Map
- 键无序:HashMap【底层是:哈希表(数组+链表+红黑树)】
- 键排序:TreeMap
- 键插入与取出顺序一致:LinkedHashMap
- 读取文件: Properties
可以通过Collections.synchronizedList (List,set,map等集合对象) 方法将线程不安全的集合变成安全的

被折叠的 条评论
为什么被折叠?



