在Java中如何使用lambda表达式创建线程?
lambda表达式是在java8中引入的。它是java8最流行的特性之一,它为Java带来了函数式编程功能。通过使用lambda表达式,我们可以直接用Java编写方法的实现。
在下面的程序中,我们可以通过使用Lamda表达式实现Runnable接口来创建线程。 在使用lambda表达式时,我们可以跳过新的runnable()和run()方法,因为编译器知道Thread对象接受一个Runnable对象,并且该对象只包含一个不带参数的方法run()。
示例
public class LambdaThreadTest { public static void main(String args[]) { //子线程 new Thread(() -> { //Lambda表达 for(int i=1; i <= 5; i++) { System.out.println("子线程: "+ i); try { Thread.sleep(500); } catch(Exception e) { e.printStackTrace(); } } }).start(); //主线程 for(int j=1; j < 5; j++) { System.out.println("主线程: "+ j); try { Thread.sleep(500); } catch(Exception e) { e.printStackTrace(); } } } }
输出结果
主线程: 1 子线程: 1 子线程: 2 主线程: 2 主线程: 3 子线程: 3 主线程: 4 子线程: 4 子线程: 5