1.什么是函数式接口
2.自定义函数式接口
3.Lambda表达式替代函数式接口做参数使用
4.Java内置四大核心函数接口
5.其他函数接口
1.什么是函数式接口
1.1 只包含一个抽象方法的接口,称为函数式接口。
1.2 你可以通过 Lambda 表达式来创建该接口的对象。(若 Lambda表达式抛出一个受检异常,那么该异常需要在目标接口的抽象方法上进行声明)。
1.3 我们可以在任意函数式接口上使用 @FunctionalInterface 注解,这样做可以检查它是否是一个函数式接口,同时 javadoc 也会包
含一条声明,说明这个接口是一个函数式接口。
2.自定义函数式接口
@FunctionalInterface
public interface MyFunctionInterface {
void play();
}
//泛型函数式接口
@FunctionalInterface
public interface HelloFunctionInterface {
T sayHello(T t);
}
3.Lambda表达式替代函数式接口做参数使用
private static void doPlay(MyFunctionInterface myFunctionInterface){
myFunctionInterface.play();
}
//lambda 表达式做参数;理解:这里相当于lambda表达式替换了了匿名内部类。
doPlay(()-> System.out.println("play football!"));
4.Java内置四大核心函数接口
函数式接口 参数类型 返回类型 用途
Consumer消费型接口 T void 对类型为T的对象应用操作,包含方法:void accept(T t);
Supplier供给型接口 无 T 返回类型为T的对象,包含方法:T get();
Function函数型接口 T R 对类型为T的对象应用操作,并返回结果。结果是R类型的对象。包含方法:R apply(T t);
Predicate断定型接口 T boolean 确定类型为T的对象是否满足某约束,并返回boolean 值。包含方法boolean test(T t);
5.其他函数接口
寄语(想到什么就写什么):
1.关于选择:年轻无惧,勇敢选择,如果你感到不快乐,就跟随自己的心去做自己想做的事情。
2.关于苦痛:人生苦短,痛苦不可避免,但是可以选择痛苦的方式。
3.关于孤独:唯孤独永恒,学会和自己相处。
网友评论