一、Lambda表达式入门

我们先来看一段代码:匿名内部类的方式实现参数的传递

interface Command{
public abstract void test();
} public class CommandTest { public void show(Command c) {
c.test();
} public static void main(String[] args) {
CommandTest ct=new CommandTest();
//这里的show方法需要一个Command对象,我们并没有new一个对象来传参,而是使用了匿名内部类的方式来进行参数传递
ct.show(new Command() { @Override
public void test() {
System.out.println("匿名内部类测试"); }
});
} }

  

interface Command{
public abstract void test();
} public class CommandTest { public void show(Command c) {
c.test();
} public static void main(String[] args) {
CommandTest ct=new CommandTest(); ct.show(()->{System.out.println("Lambda表达式入门测试");});//Lambda表达式实现参数传递
} }

  

上面的一段代码和之前的除了参数传递方式不同,其他都一样,第一段代码用匿名内部类的方式实现参数传递,第二段代码用Lambda表达式实现参数传递。

我们会发现使用Lambda表达式实现参数传递会简洁很多,少写了很多代码,却可以实现同样的功能。

二、Lambda表达式详细介绍:

Lambda表达书由三部分组成:

Lambda表达式与函数式接口:

Lambda表达式与匿名内部类的区别:

05-11 20:20