Lambda表达式
定义:
Lambda表达式也可称为“闭包”是jdk1.8发布的新特性之一,允许把函数作为一个方法的参数进行传递。
lambda表达式的语法格式:
(参数列表 ) ->{ 代码 }
(参数列表):代表的是接口中抽象方法的参数列表
->:传递的意思,把小括号中的参数传递到方法体重
{}:里面是重写接口中抽象方法的具体代码
lambda表达式的语法简写格式
1,参数:
在标准格式的基础上,参数列表的数据类型可以省略不写
在标准格式的基础上,小括号中只有一个参数时参数的数据类型和小括号都可以省略2,代码:
在标准格式的基础上,当大括号中的代码只有一行时
大括号{}、return关键字、,代码末尾的分号;
都可以省略但必须保证同时省略或同时存在
lambda表达式的使用前提
1.必须存在接口,并且接口中有且仅有一个抽象方法
2.方法的参数类型必须是lambda表达式对应的接口类型
lambda表达式的使用场景
简化匿名内部类的
//使用匿名内部类创建线程
new Thread(
new Runnable()
{
@Override
public void run()
{
System.out.println("线程执行的任务");
}
}
).start();
//使用Lambda表达式创建线程
new Thread(
() ->{
System.out.println("线程执行的任务");
}
).start();
其它
有且仅有一个抽象方法的接口称为函数式接口