第八章【Java集合】
- 集合的概念与作用
- 使用 Lambda 表达式遍历集合
- Collection 集合的常规用法
- 使用 Predicate 操作集合
- 使用 Iterator 和 foreach 循环遍历 Collection 集合
- HashSet、LinkedHashSet 的用法
- 对集合使用 Stream 进行流式编程
- EnumSet 的用法
- ArrayList 和 Vector
- List 集合的常规用法
- Queue 接口和Deque 接口
- 固定长度的 List 集合
- ArrayDeque 的用法
- PriorityQueue 的用法
- Map 的概念与常规用法
- LinkedList 集合的用法
- TreeMap 的用法
- HashMap 和 HashTable
- 几种特殊的Map 实现类
- Hash 算法对 HashSet、HashMap性能的影响
- Collections 工具类的用法
- Enumeration 迭代器的用法
- Java的集合体系
java集合大致分为List、Set、Queue、Map四种
- List:有序重复
- Set:无序不重复
- Queue:实现队列
- Map:保存映射关系
java5 提供 java.util.concurrent 包下一些线程支持的集合类
Collection 接口是 List、Set、Queue 的父接口,其中定义的方法有
- boolean add(Object o):添加成功或原先的被修改返回true
- boolean addAll(Collection c)
- void clear(): 清空集合,长度为0
- boolean contains(Object o): 返回是否包含元素o
- boolean contaisAll(Collection c): 返回是否包含集合c
- boolean isEmpty(): 集合长度为0返回true
- Iterator iterator(): 返回一个Iterator对象用于遍历
- boolean remove(Object o): 移除元素o,当集合有多个o时移除第一个元素o
- boolean removeAll(Collection c): 移除集合c,如果移除了至少一个元素则返回true
- boolean retainAll(Collection c): 移除不在集合 c 中的元素,相当于取交集的运算
- int size(): 返回集合的元素个数
- Object[] toArray(): 把集合装换成数组
遍历
1、使用 Lambda 表达式
1、使用 Iterator (Java8 提供)
boolean hasNext():如果集合还有元素则返回true
Object next():返回集合的下一个元素
void remove():删除集合上一次next()返回的元素
void forEachRemaining():Java8新增,用来Lambda 表达式遍历集合元素
1、使用Lambda 表达式遍历 Iterator(Java8 提供)
使用Iterator 接口 的 forEachRemaining(Consumer action)方法,传递集合元素给 Consumer 的 accept(T t)方法
1、使用 foreach (加强 for 循环)循环遍历
1、使用 Predicate 操作(Java8 提供)
removeIf(Predicate filter):移除符合筛选条件的