lambda表达式语法与函数式编程接口

java8中lambda表达式的两种语法

1、(parameters) ->expression   单表达式

2、(parameters) ->{statements;}  语句

语法解释

(parameters),lambda表达式的参数列表,其定义方法为JAVA普通的方法相同,例如(Object a, Object b)。

-> 箭头,是参数列表与lambda表达式主题部分的分隔符号。

-------------------------------------------------------------------------------

在java8中,一个接口如果只定义了一个抽象方法,那这个接口就可以称为函数式接口,就可以使用lambda表达式来简化程序代码。Lambda表达式可以直接赋值给变量,也可以直接作为参数传递给函数

public class LambdaDemo {
    public static void main(String[] args) {
        // 使用匿名内部类
        startThread(new Runnable() {
            
            @Override
            public void run() {
                // TODO Auto-generated method stub
                System.out.println("匿名内部类实现runnabale");
            }
        });
        
        // 使用lambda表达式
        startThread(() ->  {System.out.println("lambda实现runnable");});
        
    }
    
    public static void startThread(Runnable a ) {
        (new Thread(a)).start();
    }
}

猜你喜欢

转载自www.cnblogs.com/AyasatoMayoi/p/10868906.html