遍历Map集合的方式有两种,如下所示:
第一种:获取所有的key-value中的key组成Set集合,再通过Set集合遍历的方式(加强循环或者迭代器),遍历key,从而通过Map集合中色get方法得到value的值
public class Test4 {
public static void main(String[] args) {
Map<String, Integer> scores = new HashMap<String, Integer>();
scores.put("Tom",100);
scores.put("Kate", 60);
//Map集合遍历
//第一种:获取所有的key-value中的key组成Set集合,再通过Set集合遍历的方式(加强循环或者迭代器),遍历key,从而通过Map集合中色get方法得到value的值
//加强循环
Set<String> names = scores.keySet();
for (String name : names) {
int score = scores.get(name);
System.out.println(score);
}
//迭代器
Iterator<String> iterator = names.iterator();
while(iterator.hasNext()) {
int score = scores.get(iterator.next());
System.out.println(score);
}
}
}
第二种:将所有的key-value变成一个Entry对象(即用Entry对象包含),再通过Set集合遍历的方式(加强循环或者迭代器),通过Entry对象getValue()得到value的值
public class Test4 {
public static void main(String[] args) {
Map<String, Integer> scores = new HashMap<String, Integer>();
scores.put("Tom",100);
scores.put("Kate", 60);
//Map集合遍历
//第二种:将所有的key-value变成一个Entry对象(即用Entry对象包含),再通过Set集合遍历的方式(加强循环或者迭代器),通过Entry对象getValue()得到value的值
//加强循环
Set<Entry<String, Integer>> entries = scores.entrySet();
for (Entry<String, Integer> entry : entries) {
int score = entry.getValue();
System.out.println(score);
}
//迭代器
Iterator<Entry<String, Integer>> iterator =entries.iterator();
while(iterator.hasNext()) {
Entry<String, Integer> entry = iterator.next();
System.out.println(entry.getValue());
}
}
}