Java8新特性

 
1,Stream不是集合元素,它不是数据结构,并不保存数据,它就是stream流,流就是数据渠道,用于操作数据源(集合,数组)所生成的元素集合,它更像一个高级的Iterator,原始的Iterator只能一个一个的遍历元素,而Stream就是一个高级的版本,单向,不可逆,只能遍历一次。
 
2,Stream常用的方法,filter(过滤),sorted(排序),groupingBy(分组),distinct(去重),map(将对象集合转换成字符串对象),forEach(循环)
 
2,Stream的中间操作
  • 筛选与切片
 
方法
描述
filter(Predicate P)
接受Lambda,从流中排除某些元素
distinct()
筛选,通过流所产生的元素的hashCode()和equals()去除重复元素
limit(Long maxSize)
截断流,使其元素不超过给定数量maxSize
skip(Long n)
跳过n个元素,返回值扔掉前n个元素。若返回值中没有n个元素,则返回一个空流。
 
  • 映射
 
方法
描述
map(Function f)
接受一个函数作为参数,该函数会被应用到每一个元素上,并将其映射到一个新的元素
mapToDouble(ToDoubleFunction f)
接受一个函数作为参数,该函数会被应用到每一个元素上,产生一个新的DoubleStream
mapToInt(ToIntFuntion f)
接受一个函数作为参数,该函数会被应用到每一个元素上,产生一个新的IntStream
mapToLong(ToLongFunction f)
接受一个函数作为参数,该函数会被应用到每一个元素上,产生一个新的LongStream
flatMap(Function f)
接受一个函数作为参数,将流种的每一个值都换成另外一个流,把所以的流换成一个流
 
 
posted @ 2022-01-27 17:00  徐庆  阅读(48)  评论(0)    收藏  举报