Java之路:Lambda

在Java 8新引入了Lambda表达式,所以创建线程的形式有所变化,Lambda表达式更能够适用在并发的条件下,跟多线程起的作用不一样

这里提到的lambda表达式,相当于大多数动态语言中常见的闭包、匿名函数的概念。也类似于C语言中一个函数指针,这个指针可以把一个函数名作为一个参数传递到另外一个函数中。

利用Lambda表达式,创建新线程的示范代码如下:

Thread thread = new Thread(()->{System.out.println("Java 8");}).start();

可以看到这段代码比前面章节学习到的创建线程的代码精简了,也有较好的可读性,下面对这个语句分析如下:
() -> {System.out.println("Java 8");}就是lambda表达式。

Lambda表达式的结构可大体分为3部分:

(1)最前面的部分是一对括号,里面是参数,这里无参数,就是一对空括号。
(2)中间的是 -> ,用来分割参数和主体部分,它用花括号括起来{}。
(3){}是主体部分,它可以是一个表达式或者一个语句块。如果是一个表达式,表达式的值会被作为返回值返回;如果是语句块,需要用return语句指定返回值。

猜你喜欢

转载自blog.csdn.net/qq_43555323/article/details/84970626