一、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表达式实现参数传递会简洁很多,少写了很多代码,却可以实现同样的功能。