1. Collection 【看「图 1」即可,文章意义不大】
1) 常见方法
1. 添加
- boolean add(E var1);
- boolean addAll(Collection<? extends E> var1); // 批量添加
2. 删除
- boolean remove(Object var1);
- boolean removeAll(Collection<?> var1); // 批量删除
3. 判断
- boolean contains(Object var1); // 判断集合中是否包含 var1
- boolean containsAll(Collection<?> var1); // 判断 var1 是否为集合的子集
- boolean isEmpty(); // 判断集合是否为空
4. 获取
- int size(); // 获取集合的长度
5. 转换
- Object[] toArray(); // 将集合转换为数组
图 1
图源来自 轩成笔记 - 知乎,侵删
1.1 List 和 Set 的区别
List | Set | |
有序性 | 有序 | 无序 |
唯一性 | 可重复 | 不可重复 |
1.2 List
ArrayList | LinkedList | Vector | |
底层数据结构 | 数组 | 链表 | 数组 |
查询操作 | √ | × | √ |
增删操作 | × | √ | × |
线程安全 | × | × | √ |
1.3 Set
HashSet | TreeSet | LinkedHashSet | |
底层数据结构 | 哈希表(数组 + 链表) | 红黑树 | 哈希表 +链表 |
查询与插入顺序 | 不一致 | 不一致 | 一致 |
2. Map
键值对:key-value,key 不允许重复