lambda表达式总结
1、是什么
是对象,非函数,是函数式接口的对象
1.1 什么是函数式接口?
一个接口中只有一个抽象方法,这样的接口叫函数式接口
Comparable,Comparator
1.2 什么时候使用
只要可以使用匿名内部类的都可用lambda表达式替代
2、四大函数式接口
Consumer—void accept(T t) 消费型接口
Supplier—T get() 供给型接口
Function<T,R>–R apply(T t) 函数式接口
Predicate—boolean test(T t) 判断型接口
3、方法引用:使用操作符 “::” 将方法名和对象或类的名字分隔开来。 如下三种主要使用情况:https://blog.csdn.net/sun_promise/article/details/51190256
/* * 一、方法引用:若 Lambda 体中的功能,已经有方法提供了实现,可以使用方法引用 * (可以将方法引用理解为 Lambda 表达式的另外一种表现形式) * * 1. 对象的引用 :: 实例方法名 * * 2. 类名 :: 静态方法名 * * 3. 类名 :: 实例方法名 * * 注意: * ①方法引用所引用的方法的参数列表与返回值类型,需要与函数式接口中抽象方法的参数列表和返回值类型保持一致! * ②若Lambda 的参数列表的第一个参数,是实例方法的调用者,第二个参数(或无参)是实例方法的参数时,格式: ClassName::MethodName * /