⑴、Set<k> keySet
private static void method_2(Map<Integer, String> map) {
Set<Integer> keySet = map.keySet();
Iterator<Integer> it = keySet.iterator();
while (it.hasNext()) {
Integer key = it.next();
String value = map.get(key);
Sop(key + "=" + value);
}
}
⑵、Set<Map.Entry<k,v>> entrySet:提倡用这种方法
将map集合中的映射关系存入到了set集合中,而这个关系的数据类型就是:Map.Entry。Entry其实就是Map中的一个static内部接口。为什么要定义在内部呢?因为只有有了Map集合,有了键值对,才会有键值的映射关系。关系属于Map集合中的一个内部事物。而且该事物在直接访问Map集合中的元素。
private static void method_3(Map<Integer, String> map) {
Set<Map.Entry<Integer, String>> entrySet = map.entrySet();
// public static interface Map.Entry<K,V>:Entry<K,V>是Map内部接口
Iterator<Entry<Integer, String>> it = entrySet.iterator();
while (it.hasNext()) {
Map.Entry<Integer, String> me = it.next();
Integer key = me.getKey();
String value = me.getValue();
Sop(key + "=" + value);
}
}
|