Map中存放数组,如何依次取出值,(迭代器也只能取数组的所有值)?

如题所述

map 的存储形式不是 key value键值对的形式吗 那么你就遍历map把数组取出再遍历数组取得数组的每一个值
map的遍历方法 推荐两个
一、最常规的遍历方法
public static void work(Map<String, Student> map) {
Collection<Student> c = map.values();
Iterator it = c.iterator();
for (; it.hasNext();) {
System.out.println(it.next());
}
}

二、利用keyset遍历
public static void workByKeySet(Map<String, Student> map) {
Set<String> key = map.keySet();
for (Iterator it = key.iterator(); it.hasNext();) {
String s = (String) it.next();
System.out.println(map.get(s));
}
}

补充:如果你细心的话 ,应该发现map和set是有着很紧密的联系的。其实map的key单独拿出来看就是个set, 所以map也可以看成是 key ,value形式的set。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-12
取出map的数组再遍历这个数组不就完了
第2个回答  2012-12-11
你要取Map的值还是Map里数组的值?到底是取什么的值,描述清楚!
相似回答