HashMap遍历
HashMap 是一种(key,value)形式数据存储的容器,其遍历方法有4种;
普通遍历
import java.util.HashMap;
public class Test {
public static void main(String[] args) {
HashMap<String,Integer> map = new HashMap<String,Integer>();
map.put("a1",1);
map.put("a2",2);
map.put("a3",3);
for(String data:map.keySet()) {
System.out.println(data+"--"+map.get(data));
}
}
}
a1--1
a2--2
a3--3
这就是 HashMap 的普通遍历方式;通过加强循环和 HashMap 的 keySet 方法,将 HashMap 中的 keys 值不断赋值给 data,并通过 get方法完成遍历;
keySet加强循环遍历
//沿用上个例子的一些代码,这里只给方法
Set<String> set = map.keySet();
for(String data:set) {
System.out.println(data+"--"+map.get(data));
}
通过 keySet 方法将 HashMap 中的 key 值赋给集合 set,加强遍历集合,输出遍历的内容;
keySet Iterator 遍历
Set<String> set = map.keySet();
Iterator<String> ite = set.iterator();
while(ite.hasNext()) {
String data = ite.next();
System.out.println(data+"--"+map.get(data));
}
将通过 keySet 方法得到的 set 集合使用 iterator 方法进行遍历;
entrySet 遍历方法
Set<Entry<String,Integer>> set = map.entrySet();
for(Entry<String,Integer> entry:set) {
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key+"--"+value);
}
采用 entrySet 方法和加强循环完成遍历。
说来惭愧,这四种方法之前学的时候感觉自己掌握的没有问题,今天写博客又突然忘了,又查了笔记,确实有些东西没有我们想象的容易记。