Collection体系常用类:
- Set(接口)
- List(接口)
- Map(接口)
- SortedSet(接口)
- SortedMap(接口)
- HashSet(类)
- TreeSet(类)
- ArrayList(类)
- LinkedList(类)
- Vector(类)
- Collections(类)
- Arrays(类)
- AbstractCollection(抽象类)
List、Set
List是有序的集合、而Set是不包含重复元素的无序集合
在判断对象是否重复时,需要在该对象所属的类中重写equals()和hashCode()方法。
Map与常用实现
Map不能包含重复的键,每个键最多对应一个值。值可以重复。
映射:张三->5000 key(键->value(值
Map是接口不能直接ne一个对象 需要实例化 HashMap()
重要:keyset 与map中的键相对应 键修改 keyset中的键也会修改。线程不安全性:在多线程的环境下,当hashMap扩容的时候有可能会变成一个死循环的链表
故当需要在多线程环境下使用hashMap时,使用conCurrentHashMap。
TreeSet/TreeMap
LinkedHashSet和插入的顺序一样
TreeSet而是有序的
PS:List是类的话,加个s,Lists则是List的工具方法
Guava番石榴 collection的补充