lambda表达式的作用
简化代码
更好的使用内部匿名类
更好的操作集合
lambda表达式的使用
表达式:(参数)->{方法体}
Lambda表达式本身就是一个接口的实现。
lambda表达式只实现只有一个方法的接口(函数式接口)或只有一个抽象方法的抽象类
实例:
1,直接作为一个内部匿名类
public static void test1(){
new Thread(
()->System.out.println("thread....");
).start();
}
2,用一个接口来接受
public static void test2(){
Consumer<String> c=(t)-> System.out.println("Consumer value:"+t);
c.accept("pop");
}
函数式接口(@FunctionalInterface)
1, 只有一个方法的接口
2,这个接口中只有一个新增的方法,其他的方法在Object类中都是有的
jdk提供的四大函数式接口
1,有参数无返回值(消费型)
@FunctionalInterface