📜  java lambda foreach 多个语句 - Java (1)

📅  最后修改于: 2023-12-03 15:15:56.799000             🧑  作者: Mango

Java Lambda表达式中foreach循环多个语句

在Java中,使用Lambda表达式可以极大地简化代码编写,在对集合或数组进行循环遍历时也不例外。在Lambda表达式中,使用foreach方法可以遍历集合中的每个元素。本文将介绍如何在Lambda表达式中使用foreach循环多个语句。

Java Lambda表达式

Java Lambda表达式是Java SE 8中引入的一个新功能,它可以将一个代码块作为参数传递给方法中,从而使代码更加简洁、易读、易维护。Lambda表达式由三个部分组成:

  • 参数列表:Lambda表达式的参数列表可以为空,也可以有1个、2个或更多的参数,多个参数使用逗号分隔。
  • 箭头符号:箭头符号“->”将Lambda表达式的参数列表与代码块分开。
  • 代码块:Lambda表达式可以包含一个或多个代码语句,也可以是一个表达式。

例如,下面是一个简单的Lambda表达式示例,它接受一个整数参数并将其加1:

(x) -> x + 1

在Lambda表达式中,参数列表中的变量可以推断出类型,所以在参数列表中可以省略类型声明。例如,上面的Lambda表达式可以简化为:

x -> x + 1
Java Lambda表达式中使用foreach

在Java SE 8及以上版本中,foreach方法被添加到了Iterable接口中,可以对集合中的每个元素进行遍历。在Lambda表达式中,使用foreach方法可以对集合中的每个元素应用一个代码块。

例如,下面是一个Lambda表达式使用foreach遍历集合中每个元素并打印输出的示例:

List<String> list = Arrays.asList("apple", "banana", "orange");
list.forEach(item -> System.out.println(item));

上面的Lambda表达式中,item是参数列表中的变量名,代码块中的System.out.println(item)表示对每个元素调用一次System.out.println方法,并传入该元素作为参数。

Lambda表达式中使用多个语句

在Lambda表达式中,代码块可以是一个或多个语句。如果需要在Lambda表达式中使用多个语句,可以使用一对大括号将这些语句括起来。例如,下面是一个简单的Lambda表达式示例,它接受两个整数参数并计算它们的和:

(x, y) -> {
    int sum = x + y;
    return sum;
}

上述Lambda表达式中,大括号内使用了两个语句,第一行计算了两个参数的和,第二行将该和返回。

Java Lambda表达式中foreach循环多个语句

如果需要在使用Lambda表达式中的foreach方法时处理多个语句,可以在括号内使用大括号括起来的代码块。例如,下面是一个使用Lambda表达式将集合中的每个元素按照一定规则打印输出的示例:

List<String> list = Arrays.asList("apple", "banana", "orange");
list.forEach(item -> {
    System.out.print(item + ": ");
    System.out.println(item.length());
});

上面的Lambda表达式中,括号内使用了两个语句,第一行将元素和冒号打印输出,第二行将元素长度打印输出。在处理多个语句时,需要注意每个语句的分号分隔符。

总结

Lambda表达式是Java SE 8中引入的一个非常有用的新功能,在对集合或数组进行循环遍历时也大大简化了代码编写。在使用Lambda表达式进行foreach循环时,需要注意代码块的使用和语句的分隔符。