JAVA8新特性
CoderJu
这个作者很懒,什么都没留下…
展开
-
JAVA8新特性之Lambda表达式
Lambda(Lambda 是希腊字母 λ 的英文名称)表达式本质上是一个匿名方法.也可以称之为闭包。该方法允许把函数作为一个方法的参数(函数作为参数传递进入方法中)。使用该表达式可以使JAVA代码变得更加简洁。Lambda表达式的语法(parameters) -> expression 或 (parameters) ->{ statements; }特征可选类型声明:不需要...原创 2019-03-24 21:28:57 · 142 阅读 · 0 评论 -
JAVA8新特性之函数式接口(一)
函数式接口是整个Lambda表达式的根源,也就是说,只有理解了函数式接口才能更好的掌握Lambda表达式。函数式接口就是有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。也就是说他还可以有默认方法和静态方法。默认方法在接口中的定义使用关键词default。一般来说满足一下几点的都是函数接口:一个接口有且只有一个抽象方法,(Object的public方法除外)那么该接口就是一个函数式接...原创 2019-03-31 23:53:09 · 318 阅读 · 0 评论 -
JAVA8新特性之方法引用
方法引用实际上是lambda表达式的一种特殊形式,也就是说是对已经存在的lambda表达是的简化。方法引用是用来直接访问类或者实例的已经存在的方法或者构造方法,方法引用提供了一种引用而不执行方法的方式,需要由兼容的函数式接口构成的目标类型上下文。计算时,方法引用会创建函数式接口的一个实例。方法引用的标示一般是双冒号“::"。所以方法引用的标准形式为:类名::方法名 (方法名不需要加括号)。一般...原创 2019-03-27 23:59:51 · 310 阅读 · 1 评论 -
JAVA8新特性之stream(一)
StreamJAVA8新增了一个抽象,称之为流,可以以一种声明的方式来处理数据。一般用来处理集合,我们可以认为是一种高级集合。这个方式是将数据集合看做是一种流,在管道中传输,经过中间各种操作后,最终得到前面处理的结果。流的特点只能遍历一次采用内部迭代的方式(这个需要和传统集合的遍历方式作对比,外部迭代是指需要我们手写代码进行处理。而内部迭代只需要告诉他我们需要什么,具体处理则交给流的内...原创 2019-04-10 23:42:40 · 129 阅读 · 0 评论 -
JAVA8新特性之函数式接口(二)
DoubleSupplier:代表一个double值结构的提供方 public static void main(String[] args) { System.out.println("------DoubleSupplier------"); DoubleSupplier doubleSupplier=()->8.0; doubl...原创 2019-04-01 23:08:37 · 339 阅读 · 0 评论 -
JAVA8新特性之函数式接口(四)
JAVA8中的函数式接口如下表: 序号 接口 & 描述 1 BiConsumer<T,U> 代表了一个接受两个输入参数的操作,并且不返回任何结果 2 BiFunction<T,U,R> 代表了一个接受两个输入参数的方法,并且返回一个结果...原创 2019-04-07 23:56:13 · 173 阅读 · 0 评论 -
JAVA8新特性之函数式接口(三)
LongUnaryOperator:接受一个参数同为类型long,返回值类型也为long。 public static void main(String[] args) {System.out.println("------LongUnaryOperator------"); LongUnaryOperator longUnaryOperator = (wt)->{...原创 2019-04-02 23:42:06 · 293 阅读 · 0 评论 -
JAVA8新特性之默认方法
默认方法默认方法允许您添加新的功能到现有库的接口中,并能确保与采用旧版本接口编写的代码的二进制兼容性。JAVA8新增了接口的默认方法,简单的说就是在接口中可以有实现方法,而不仅仅是方法的声明,默认方法的实现也比较简单,只要在方法名字前面加个default关键字就可以了。增加该特性的原因在1.8之前接口的好处是让JAVA面向抽象而不是具体编程,缺陷就是如果接口里面的方法声明发生了变化,就需...原创 2019-04-10 00:04:25 · 167 阅读 · 0 评论