软考
APP下载

遍历map的几种方法

Map是Java中常用的一种数据结构,是一种键值对的集合。在Java中,Map接口提供了多种遍历方式来读取Map集合中的元素。本文将从不同角度介绍Map的几种遍历方法。

1. 使用迭代器遍历Map

使用迭代器可以遍历Map集合中的所有元素,例如下面的示例代码:

```

Map map = new HashMap<>();

map.put("A", 1);

map.put("B", 2);

map.put("C", 3);

Iterator > iterator = map.entrySet().iterator();

while (iterator.hasNext()) {

Map.Entry entry = iterator.next();

System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());

}

```

上面代码中,我们使用了entrySet()方法来获取Map集合中所有的键值对,接着使用iterator()方法来获取迭代器。通过遍历迭代器中的元素,可以获取Map集合中每个键值对的键和值。

2. 使用foreach循环遍历Map

Java 5.0引入了foreach循环,使得遍历Map集合更加方便。示例代码如下:

```

Map map = new HashMap<>();

map.put("A", 1);

map.put("B", 2);

map.put("C", 3);

for (Map.Entry entry : map.entrySet()) {

System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());

}

```

上面代码中,在foreach循环中使用了entrySet()方法获取Map集合中所有的键值对,接着直接遍历Map集合中的元素,使用getKey()和getValue()方法分别获取键和值。

3. 使用Lambda表达式遍历Map

Java 8引入了Lambda表达式,可以使用Lambda表达式遍历Map集合。如下所示:

```

Map map = new HashMap<>();

map.put("A", 1);

map.put("B", 2);

map.put("C", 3);

map.forEach((k, v) -> System.out.println("Key = " + k + ", Value = " + v));

```

上面代码中,我们使用forEach方法遍历Map集合中的元素,Lambda表达式中的参数k和v分别代表当前遍历到的键和值。

4. 遍历Map的Key集合

Map集合中的keySet()方法返回Map中所有键的Set集合,可以使用for-each循环遍历其中每个键。例如:

```

Map map = new HashMap<>();

map.put("A", 1);

map.put("B", 2);

map.put("C", 3);

for (String key : map.keySet()) {

System.out.println("Key = " + key);

}

```

上面代码中,我们遍历了Map集合中所有键的Set集合,获取了Map中所有键的值。

5. 遍历Map的Value集合

Map集合中的values()方法返回Map中所有值的Collection集合,可以使用for-each循环遍历其中每个值。例如:

```

Map map = new HashMap<>();

map.put("A", 1);

map.put("B", 2);

map.put("C", 3);

for (Integer value : map.values()) {

System.out.println("Value = " + value);

}

```

上面代码中,我们遍历了Map集合中所有值的Collection集合,获取了Map中所有值的值。

本文介绍了几种遍历Map集合的方法,包括使用迭代器、foreach循环、Lambda表达式、遍历Key集合和遍历Value集合。使用不同的遍历方式,可以根据不同的情况选择最适合的遍历方法。

备考资料 免费领取:软件设计师报考指南+考情分析+思维导图等 立即下载
真题演练 精准解析历年真题,助你高效备考! 立即做题
相关阅读
软件设计师题库