首页 > 图灵资讯 > 技术篇>正文
如何在Java中定义lambda表达式
2024-09-12 10:07:12
java 中定义 lambda 表达式方法如下:(1) 圆括号中包含参数列表;(2) 表达式由箭头后跟表达式组成;(3) 参数和返回值类型可以通过类型推断或类型声明来确定;(4) 在实战案例中使用 lambda 对数组元素的表达式求和。
如何在 Java 中定义 Lambda 表达式
Lambda 表达式是一种匿名函数,可以作为参数传输或存储在变量中。它们在那里 Java 8 介绍,为代码提供了更简洁、更优雅的写作方法。
语法
立即学习“Java免费学习笔记(深入);
Lambda 表达式的基本语法如下:
(parameters) -> expression
其中:
- parameters: lambda 用圆括号包括表达式参数列表。可以使用类型声明或类型推断。
- expression:lambda 表达式函数体,用箭头(->)后跟表达式。这种表达式可以是任何有效的 Java 表达式。
类型推断
Java 编译器可以通过类型推断来确定 lambda 表达式参数和返回值的类型:
// 无类型声明 (x, y) -> x + y; // 带类型声明 (int x, int y) -> x + y; // 带类型推断 (x, y) -> { // 将推断出编译器 x 和 y 为 int,result 为 int int result = x + y; return result; };
实战案例
使用 lambda 对数组中的元素进行表达式求和:
int[] numbers = {1, 2, 3, 4, 5}; // 无类型声明 int sum = Arrays.stream(numbers) .reduce(0, (a, b) -> a + b); // 带类型声明 int sum = Arrays.stream(numbers) .reduce(0, (Integer a, Integer b) -> a + b); // 带类型推断 int sum = Arrays.stream(numbers) .reduce(0, (a, b) -> { int result = a + b; return result; }); System.out.println("数组元素的和为: " + sum);
输出:
数组元素的和为: 15
以上是如何在Java中定义lambda表达式的详细内容,请关注图灵教育的其他相关文章!