美文网首页
jdk8新特性

jdk8新特性

作者: 半只笔芯 | 来源:发表于2020-02-18 23:02 被阅读0次

1.如果接口只有一个抽象接口,那么是一个函数式接口
2.如果接口声明了functionalinterface,那么编译器就会以函数式接口的定义来要求
3.如果某个接口只有一个抽象方法,编译器依然会将这个接口看做函数接口

Function <A,B> 接受一个值,返回另外一个
eg : A -> B
默认方法有 compose :接受一个Function对象当参数,先执行参数中function的apply方法,在执行调用方的apply方法
andThen 和compose相反,先执行调用方, 再执行参数中的apply方法

BiFunction<A,B,C> 接受a,b的值,经过处理之后返回c
eg:(A,B) - > return A + B
只有andthen方法,方法中的参数为function,执行完bifunction之后对function中进行处理

高阶函数:
和python一样,一个函数作为返回值,或者是对象传递

interface 中可以有default方法,default方法中有代码实现
interface 中有默认的static 方法,这两种方法都不是抽象方法,不影响函数式接口判定

lambda表达式在日常编写代码的时候,可以当做参数传递,表示代码行为,可增强代码复用性

BinaryOpeatorTest <T,T,T>
表示接受两个相同类型的值,返回一个同类型的值

Predicate
流中filter方法的参数,表示接受任意参数返回boolean值
(T t) -> boolean

Supplier
不接受任何参数,返回任意值 可以用在工厂方法中 也可以用函数引用,构造方法引用
Supplier s = Class:new Class()
() -> T t

Optional
optional可以判断参数是否为空,
Optional<Company> optional = Optional.ofNullable(object);可以判断是否为空

相关文章

  • JDK8新特性介绍

    JDK8新特性介绍 JDK8新特性:​ 1,Lambda表达式​ 2,新的日期API​ 3,引入Optional​...

  • jackson parser LocalDataTime 问题

    jackson parser LocalDataTime 问题 LocalDataTime 是 jdk8 的新特性...

  • 面试

    sql语句 jdk8新特性 lamed 测试单元测试

  • @FunctionalInterface函数式接口

    JDK8新特性:函数式接口@FunctionalInterface的使用说明

  • FunctionalInterface函数式接口

    关于jdk8的新特性函数式接口示例以及描述 代码示例

  • JDK8新特性

    Lambda语法 Lambda是什么? "Lambda表达式"(Lambda expression)是一个匿名函数...

  • jdk8新特性

    API:http://docs.oracle.com/javase/8/docs/api/ 新特性:http://...

  • JDK8 新特性

    为什么要学Java8 Java8让你的编程变得更容易 充分稳定的利用计算机硬件资源 Lambda lambda 是...

  • jdk8新特性

    Jdk8相对之前的jdk加入了很多的新特性。 1:jdk中加入了default关键字。 在java里面,我们通常都...

  • jdk8新特性

    默认方法。一个在接口里面有了一个实现的方法。只需在方法名前面加个 default 关键字即可实现默认方法。 lam...

网友评论

      本文标题:jdk8新特性

      本文链接:https://www.haomeiwen.com/subject/twknfhtx.html