022_JDK8.0新特性<四>StreamAPI_3_Stream中间操作

1. 中间操作的函数的返回值都是Stream的类型,以方便进行链式编程

2.筛选与切片

  • filter(Predicate<? extends T> predicate) : 接收断言型接口,从流中排除不符合要求的元素,简称过滤
  • limit(long maxSize) : 截断流,使元素不超过指定数量
  • skip(long n) : 跳过指定个数的元素,返回一个扔掉了指定个数的Stream的对象
  • distinct() : 筛选去重,通过流所生成的元素的   hashCode()   和   equals()   进行比较,去除重复的元素

3.映射

  • map(Function<? super T , ? extends R> mapper) : 接收函数型接口,将元素转换成其他形式或提取信息.接收一个函数作为参数,该函数会被应用到每一个元素上,并映射成一个新的元素
  • flatMap(Function<? super T , ? extends Stream<? extends R> >  mapper) : 接收一个函数作为参数,将流中的每一个值都换成另一个流,然后把所有流连成一个流
  • map与flatMap函数类似于Collections中的add()与addAll()函数

4.排序

  • sorted()   :  元素对象的类型实现自然排序接口Comparable
  • sorted(Comparator c)  : 定制排序Comparator

5.

原文地址:https://www.cnblogs.com/xddx/p/13423004.html