概述
我们先初始化一个最简单的Map集合
Map<String, String> test = new HashMap<>();
test.put("123", "456");
test.put("456", "789");
test.put("012", "345");
方法一:
先获取到所有key、value,再通过foreach循环,遍历出所有k、v,理论上推荐这种方法,尤其是容量较大的时候。
for (Map.Entry<String, String> entry:test.entrySet()){
System.out.println(entry.getKey() + "" + entry.getValue());
entry.setValue("00000");
}
方法二:
通过key的set集合进行遍历,然后通过key来取map的value
Set set = test.keySet();
for (Object key : set) {
System.out.println(key + "" + test.get(key));
}
方法三:
将key的set集合以迭代器的方式遍历出来,然后通过key来取map的value
Set set = test.keySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()){
Object next = iterator.next();
System.out.println("key:" + next + ",value:" + test.get(next));
}
方法四:
将整个Map的键值对以迭代器的方式遍历出来,然后通过.getKey()与.getValue()方法取k、v的值,过程比较繁琐,数据量比较大时耗时较长。不推荐
Set<Map.Entry<String, String>> entries = test.entrySet();
Iterator<Map.Entry<String, String>> iterator1 = entries.iterator();
while (iterator1.hasNext()){
Map.Entry<String, String> next = iterator1.next();
System.out.println("key:" + next.getKey() + ",value:" + next.getValue());
}
方法五:
直接取出map的value值并放在collection中,然后将v循环遍历,在只需要获取map的值情况下推荐使用,其他情况不推荐
Collection<String> values = test.values();
for (String value : values) {
System.out.println("value:" + value);
}
复杂Map遍历举例:
Map<String, List> map = new HashMap<String, List>();
for (Map.Entry entry : map.entrySet()) {
String key = entry.getKey().toString();
List<String> list= (List) entry.getValue();
for (String value : list) {
System.out.println(key + "====" + value);
}
}
最后
以上就是俭朴鸵鸟为你收集整理的Map循环遍历的五种方法记录的全部内容,希望文章能够帮你解决Map循环遍历的五种方法记录所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复