Java 8 lambda表达式
时间: 2023-12-26 17:05:03 浏览: 27
Java 8引入了lambda表达式,它是一种匿名函数,可以作为参数传递给其他方法,或者作为返回值从方法中返回。Lambda表达式的主要目的是简化Java中的函数式编程。
下面是一个简单的示例,演示如何使用lambda表达式来实现一个接口:
```
interface MyInterface {
int add(int x, int y);
}
public class LambdaTest {
public static void main(String[] args) {
MyInterface myInterface = (x, y) -> x + y;
int result = myInterface.add(3, 5);
System.out.println(result); // 输出8
}
}
```
在上面的示例中,我们定义了一个名为`MyInterface`的接口,该接口有一个`add`方法。然后,在`LambdaTest`类中,我们使用lambda表达式实现了这个接口。我们创建了一个`MyInterface`类型的变量`myInterface`,并使用`(x, y) -> x + y`表示lambda表达式,该表达式实现了`add`方法。最后,我们调用`myInterface.add(3, 5)`,并将结果打印到控制台上。
Lambda表达式的语法比较简单。它由参数列表、箭头符号和一个表达式或代码块组成。例如,`(x, y) -> x + y`中,`(x, y)`是参数列表,`->`是箭头符号,`x + y`是表达式。如果表达式比较复杂,可以使用代码块,例如:`(x, y) -> { return x + y; }`。注意,如果表达式或代码块中只有一条语句,则可以省略`return`关键字。
Lambda表达式使得Java中的函数式编程更加容易,可以在很多场景下替代匿名内部类,从而简化代码并提高可读性。