Lambda表达式的标准格式由三个部分组成
(参数类型 参数名称) -> { 代码语句 }
1.一些参数
小括号内的语法与传统方法参数列表一致:无参数则留空;多个参数用逗号分隔
2.一个箭头
-> 把参数传递给要执行的方法体
3.一段代码
重写接口的抽象方法的方法体,方法体写在括号内。
Lambda表达式使用前提
1.使用Lambda必须具有接口,且要求接口中有且仅有一个抽象方法。
只有当接口中的抽象方法存在且唯一时,才可以使用Lambda
2.有且仅有一个抽象方法的接口,称为“函数式接口”
Lambda无参数无返回值
public class RunnableImpl implements Runnable {
@Override
public void run() {
System.out.println(Thread.currentThread().getName()+"新的线程创建嘞");
}
}
public class DemoLambda {
public static void main(String[] args) {
//创建Runnable接口的实现类对象
Runnable run1 = new RunnableImpl();
//创建Thread类对象,构造方法中传递Runnable接口的实现类
Thread thread = new Thread(run1);
//调用start方法开启线程,执行run方法
thread.start();
//简化代码,使用匿名内部类,实现多线程
Runnable run2 = new Runnable()