Lambda方式创建多线程
一、Lambda表达式的标准格式
-
Lamdba创建线程,是对匿名内部类创建多线程的简化
-
由三部分组成:
a、一些参数 b、一个箭头 c、一段代码
-
格式:
(参数列表)->{一些重写方法的代码}
-
解释说明:
():接口中抽象方法的参数列表,没有参数就为空,有参数就写出参数,多个参数用逗号隔开 ->:传递的意思,把参数传给方法体 {}:重写接口的抽象方法的方法体
二、Lambda表达式可省略、可推导
-
可省略的内容(优化):
1、(参数列表):括号中参数列表中的数据类型,可以省略不写 2、(参数列表):括号中的参数如果只有一个,那么类型和()都可以省略 3、{一些代码}:如果{}中的代码只有一行,无论是否有返回值,都可以省略({},return,分号) 注意:省略{},return,分号必须一起省略。
三、代码示例
public class Lambda {
public static void main(String[] args) {
//匿名内部类创建多线程
new Thread(){
@Override
public void run() {
System.out.println(Thread.currentThread().getName()+"创建新线程1");
}
}.start();
//使用Lambda表达式,实现多线程
new Thread(()->{
System.out.println(Thread.currentThread().getName()+"创建新线程2");
}).start();
//优化Lambda
new Thread(()-> System.out.println(Thread.currentThread().getName()+"创建新线程3")).start();
}
}
Thread-0创建新线程1
Thread-1创建新线程2
Thread-2创建新线程3