java中的lambda表达式
时间: 2023-07-23 20:57:09 浏览: 125
JAVA lambda表达式
Lambda表达式是Java 8引入的一种函数式程的特性。它提供了一种洁的语法来创建匿名函数,使代码更加简洁和易读。
Lambda表式的语法如下:
(parameters) -> expression
或
(parameters) -> { statements; }
其中,parameters是方法的参数列表,可以为空或包含多个参数;箭头(->)将参数列表与表达式或代码块分隔开;expression是单个表达式,可以是任意类型的返回值;{ statements; }是一段代码块,可以包含多条语句,并且必须有返回值。
Lambda表达式可以用于函数式接口(Functional Interface)的实现,即只包含一个抽象方法的接口。例如,Java中的Runnable接口就是一个函数式接口,可以使用Lambda表达式来创建线程。
下面是一个使用Lambda表达式的示例:
```java
// 使用Lambda表达式创建线程
Thread thread = new Thread(() -> {
System.out.println("Hello, Lambda!");
});
thread.start();
```
在上面的示例中,使用Lambda表达式创建了一个匿名的Runnable对象并传递给Thread构造方法,然后启动了一个新线程。
Lambda表达式还可以用于集合的遍历、排序、过滤等操作,可以简化代码并提高可读性。
需要注意的是,Lambda表达式只能用于函数式接口的实现,即只能用于只包含一个抽象方法的接口。如果接口有多个抽象方法,编译器将无法推断Lambda表达式的类型,会报错。
希望能帮到你!如果还有其他问题,请继续提问。
阅读全文