一、集合的流式处理
在JDK8以后,提供对集合的流式操作,对集合的元素可以向“流水”一样,依次方便,遍历,排序等,它是“不可逆的”(访问后面元素之后不能再次返回前面元素 ) , 根据流的处理方式不同,可以分为 串行流和并行流, 串行流表示同一时间只能有一个流式操作,而并行流可以有多个流式操作。
流返回的结果包括中间操作和 最终操作
中间操作:它的返回值依然是 流对象 ,例如 排序、过滤、去重
最终操作: 返回值是特定的结果类型 ,例如 遍历,取最大值,最小值或返回新的集合
常用方法:
stream() :将一个集合流式化
filter(): 按条件过滤,里面使用lambda表达式
sort(): 排序集合元素
distinct: 过滤重复元素
reduce() : 将集合的所有元素累加或拼接
map(); 映射一个新的集合 对集合元素变更输出
collect():返回一个新集合
max() min():返回集合最大值或最小值
get (): 获取集合计算的结果
public static void main(String[] args) {
List<Integer> list = new ArrayList();
for(int i = 0 ;i<7;i++){
list.add(i+1);
}
// 1、过滤 filter() 过滤掉偶数
list.stream