java8-forEach(持续发布中)

x33g5p2x  于2021-03-13 发布在 Java  
字(0.8k)|赞(0)|评价(0)|浏览(251)

Java8 forEach是一个工具方法用于遍历集合,比如: (list, set or map) 和stream流(java8 提供的另外一个特性),然后对集合中的每一个元素执行特定的操作。

1. Java 8 forEach 方法

1.1. Iterable.forEach()方法

下面的代码片段显示了Iterable接口forEach方法的默认实现。我们可以通过这个方法去遍历除了Map之外的所有集合类。

上面的方法对Iterable的每个元素执行操作,直到所有元素都已处理或该操作引发异常。“ action”用来表示一个接受单个输入参数且不返回结果的操作。它是“Consumer”接口的一个实例。

我们可以通过实现Consumer接口的accept方法,实现自己对集合元素需要做的自定义操作。比如:下面的代码是实现集合中字符串转大写并打印出来的操作。

1.2. Map.forEach()

Map.forEach()方法对map中的每一个entry执行特定的操作,直到所有map的entry被处理完成或者抛出异常。

使用Map.forEach() 方法

与List等集合类遍历类似,我们可以自定义一个biconsumer action去处理key-value键值对.

Program output.

Key is : A
Value is : 1
 
Key is : B
Value is : 2
 
Key is : C
Value is : 3

2. 使用forEach遍历 List的例子

下面的代码使用forEach遍历 List中的所有偶数。

输出:

2
4

3. 使用forEach 遍历 Map

We already saw above program to iterate over all entries of aHashMapand perform an action.

We can also iterate over map keys and values and perform any action on all elements.

Java 8 forEach map entries

Program output.


A=1
B=2
C=3
 
A
B
C
 
1
2
3

相关文章