java8
java8学习笔记
千钧~
天道不一定酬所有勤,但是,天道只酬勤
展开
-
java8强大的Stream API之----Stream终止操作
以下只是部分方法终止操作会从流的流水线生成结果。其结果可以是任何不是流的值,例如:List、Integer,甚至是 void 。流进行了终止操作后,不能再次使用。1、匹配与查找方法描述allMatch(Predicate p)检查是否匹配所有元素anyMatch(Predicate p)检查是否至少匹配一个元素noneMatch(Predicate...原创 2019-08-18 22:31:36 · 481 阅读 · 0 评论 -
java8强大的Stream API之----Stream创建
创建 Stream方式一:通过集合Java8 中的 Collection 接口被扩展,提供了两个获取流的方法:default Stream stream() : 返回一个顺序流default Stream parallelStream() : 返回一个并行流1、可以通过Collection 系列集合 提供的stream() 或parallelStream() List<Str...原创 2019-08-17 21:37:47 · 387 阅读 · 0 评论 -
java8强大的Stream API之----Stream简介
Stream API说明Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是 Stream API。Stream API ( java.util.stream) 把真正的函数式编程风格引入到Java中。这是目前为止对Java类库最好的补充,因为Stream API可以极大提供Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。Stream 是 Ja...原创 2019-08-17 21:28:16 · 158 阅读 · 0 评论 -
Java8Lambda系列之----方法引用与构造器引用
方法引用(Method References)当要传递给Lambda体的操作,已经有实现的方法了,可以使用方法引用!方法引用可以看做是Lambda表达式深层次的表达。换句话说,方法引用就是Lambda表达式,也就是函数式接口的一个实例,通过方法的名字来指向一个方法,可以认为是Lambda表达式的一个语法糖。,也可以理解为方法应用是Lambda 表达式的另一种 表现形式要求:实现接口的抽...原创 2019-08-17 21:13:10 · 230 阅读 · 0 评论 -
Java8Lambda系列之----内置函数式接口
Java 内置四大核心函数式接口函数式接口参数类型返回类型用途Consumer< T> 消费型接口Tvoid对类型为T的对象应用操作,包含方法: void accept(T t)Supplier < T> 供给型接口无T返回类型为T的对象,包含方法:T get()Function<T, R> 函数型接口T...原创 2019-08-17 19:09:58 · 252 阅读 · 0 评论 -
Java8Lambda系列之----函数式接口
什么是函数式(Functional)接口只包含一个抽象方法的接口,称为函数式接口。你可以通过 Lambda 表达式来创建该接口的对象。(若 Lambda 表达式抛出一个受检异常(即:非运行时异常),那么该异常需要在目标接口的抽象方法上进行声明)。我们可以在一个接口上使用 @FunctionalInterface 注解,这样做可以检查它是否是一个函数式接口。同时 javadoc 也会包...原创 2019-08-17 18:40:18 · 120 阅读 · 0 评论 -
Java8Lambda系列之----Lambda表达式
Lambda 表达式的基础语法:Java8 中引入一个新的操作符 ’ -> ’ 该操作符成为 Lambda操作符 或箭头操作符,箭头操作符将表达式拆分成两部分左侧: lambda表达式参数列表有侧: 表达式所需要执行的功能 既lambda 体函数式接口 : 只有一个接口方法语法格式一:无参数,无返回值 ()->对接口的实现 例:Runable r...原创 2019-08-17 18:13:25 · 136 阅读 · 0 评论 -
拆分合并子任务Fork/Join
//Fork/join 框架public class ForkJoinCalculate extends RecursiveTask<Long> { private long start; private long end; public ForkJoinCalculate(long start, long end) { this.start...原创 2019-08-21 17:39:01 · 330 阅读 · 2 评论 -
java8之----time
java8对原来的时间API进行了规范获取时间: 创建对象的方式都是静态方法1、LocalDte LocalTime LocalDateTime 人看的 LocalDateTime now = LocalDateTime.now(); //获取当前时间 LocalDateTime localDateTime = now.plusDays(20); //当前时间加20天 System....原创 2019-08-21 17:29:59 · 102 阅读 · 0 评论 -
java8之----Optional
到目前为止,臭名昭著的空指针异常是导致Java应用程序失败的最常见原因。以前,为了解决空指针异常,Google公司著名的Guava项目引入了Optional类,Guava通过使用检查空值的方式来防止代码污染,它鼓励程序员写更干净的代码。受到Google Guava的启发,Optional类已经成为Java 8类库的一部分。Optional 类(java.util.Optional)...原创 2019-08-20 17:49:25 · 124 阅读 · 0 评论 -
java8强大的Stream API之----Stream中间操作
多个中间操作可以连接起来形成一个流水线,除非流水线上触发终止操作,否则中间操作不会执行任何的处理!而在终止操作时一次性全部处理,称为“惰性求值”。1 、筛选与切片方 法描 述filter(Predicate p)接收 Lambda , 从流中排除某些元素distinct()筛选,通过流所生成元素的 hashCode() 和 equals() 去除重复元素...原创 2019-08-17 21:50:37 · 623 阅读 · 0 评论