2024年4月12日发(作者:)

map iterator用法

Map Iterator用法

Map Iterator是一种特殊的Java迭代器,可以以特定方式遍

历Map集合中的键和值。

一般来说,要使用Map Iterator,首先要使用Map类的

entrySet()方法获取集合中的所有键值对,然后使用Iterator进

行迭代:

Map map = new HashMap<>();

('apple', 1);

('banana', 2);

('carrot', 3);

//获取所有键值对

Set<> entrySet =

et();

//使用迭代器遍历集合

Iterator<> iterator =

or();

while (t()) {

entry = ();

n('key = ' + () + ' ,

value = ' + ue());

}

- 1 -

上面代码的运行结果为:

key = apple , value = 1

key = banana , value = 2

key = carrot , value = 3

其他操作

虽然上面的方式可以完成Map的迭代,但是还有一些其他的操

作可以实现类似的功能。

1)使用forEach()方法

Map类有一个forEach()方法,它可以接受一个Lambda表达

式,可以将该表达式应用于每个键值对:

h((key, value) -> n('key = '

+ key + ' , value = ' + value));

其结果和上面的迭代结束是一样的。

2)而Stream接口也提供了一个非常有用的map()方法,它

可以将Map中的每个元素映射到另一个元素:

et().stream().map(entry -> () +

'=' + ue())

.forEach(::println);

运行结果为:

apple=1

banana=2

carrot=3

- 2 -

可以看到,上面的代码将每个键值对都映射为一个字符串,然

后使用forEach()方法打印出来。

- 3 -