下面详细讲解Java中Map集合的三种遍历方式。
1. 什么是Map集合
Map是Java中一个重要的数据结构,用于存储键-值对,其中键是唯一的,值可以重复。在Java中,Map是一个接口,常用的实现类包括HashMap, TreeMap, LinkedHashMap等。
2. 三种遍历方式
(1)entrySet遍历方式
该方式利用Map接口中的entrySet()方法,将Map转化为Set集合,再使用增强for循环遍历Set集合。示例如下:
Map<String, Integer> map = new HashMap<>();
map.put("Java", 1);
map.put("Python", 2);
map.put("C++", 3);
for(Map.Entry<String, Integer> entry: map.entrySet()) {
System.out.println(entry.getKey() + ":" + entry.getValue());
}
输出结果:
Java:1
Python:2
C++:3
(2)keySet遍历方式
该方式利用Map接口中的keySet()方法,将Map中所有的key转化为Set集合,再使用增强for循环遍历Set集合,通过key获取对应的value。示例如下:
Map<String, Integer> map = new HashMap<>();
map.put("Java", 1);
map.put("Python", 2);
map.put("C++", 3);
for(String key: map.keySet()) {
System.out.println(key + ":" + map.get(key));
}
输出结果:
Java:1
Python:2
C++:3
(3)values遍历方式
该方式利用Map接口中的values()方法,返回Map中所有的value值构成的Collection集合,再使用增强for循环遍历Collection集合。示例如下:
Map<String, Integer> map = new HashMap<>();
map.put("Java", 1);
map.put("Python", 2);
map.put("C++", 3);
for(Integer value: map.values()) {
System.out.println(value);
}
输出结果:
1
2
3
3. 总结
以上就是Map集合的三种遍历方式,每种遍历方式都有其优缺点,应根据具体情况选择使用。其中,entrySet方式最为常用,因为效率高、代码简洁。
4. 示例说明
下面通过一个示例来演示三种遍历方式的具体应用。
import java.util.HashMap;
import java.util.Map;
public class MapExample {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
map.put("lucy", 12);
map.put("tom", 15);
map.put("jack", 20);
// entry set遍历方式
System.out.println("entry set遍历方式:");
for(Map.Entry<String, Integer> entry: map.entrySet()) {
System.out.println(entry.getKey() + ":" + entry.getValue());
}
// key set遍历方式
System.out.println("key set遍历方式:");
for(String key: map.keySet()) {
System.out.println(key + ":" + map.get(key));
}
// values遍历方式
System.out.println("values遍历方式:");
for(Integer value: map.values()) {
System.out.println(value);
}
}
}
输出结果:
entry set遍历方式:
lucy:12
tom:15
jack:20
key set遍历方式:
lucy:12
tom:15
jack:20
values遍历方式:
12
15
20
以上就是关于Java中Map集合的三种遍历方式的完整攻略。