头图

java8

lambda

lambda表达式可作为参数传递给方法
  1. 使用@FunctionalInterface 自定义函数式接口
  2. 将接口作为参数传递给方法
  3. 调用方法时传递lambda表达式
java 内置心函数式接口
  • Consumer<T> 消费性接口 泛型是参数 无返回值 调用方法是 void accept (T t)
  • Supplier<T> 供给型接口 无参数 泛型是返回值 调用方法是 T get()
  • Function<T,R> 函数型接口 T泛型为参数 R泛型为返回值 调用方法是 R apply(T t)
  • Predicate<T> 断言式接口 泛型是参数 返回boolean值 调用方法是 boolean test(T t)

Stream API

  • 创建Stream -> 中间操作 ->终止操作 从一个流转化成另一个流
  • 创建Stream list.stream、Array.stream(args[])、stream.of(values ...)、stream.iterate(final T seed, final UnaryOperator<T>f)
  • 中间操作:distinct()、 limit(long l)、 skip(long l)、 filter(Predicate p)、 map(Function f)、 flatMap(Function f) 、sorted()(Comparator c)
  • 终止操作:allMatch(Predicate p)、anyMatch(Predicate p)、findFirst()、finAny()、count()、max()、min()、reduce(T iden, BinaryOperator b) (BinaryOperator b)

collect(Collector c)

  • parallel()与sequential() 并行流与顺序流

玄恭
1 声望1 粉丝

引用和评论

0 条评论