专业的JAVA编程教程与资源

网站首页 > java教程 正文

总结几个Java中遍历Map集合的方法

temp10 2024-10-26 15:24:10 java教程 10 ℃ 0 评论

#头条创作挑战赛#

在Java中,Map集合的特征是以键值对的形式存储数据,并且是无序的。常用的Map集合类型有HashMap、TreeMap、LinkedHashMap、HashTable等,这些类型由于都实现了Map接口,所以都可以用以下的几个方式来进行遍历:

总结几个Java中遍历Map集合的方法

方法一:在for循环中使用entries实现Map的遍历

此方法可以同时拿到key和value,也是用的比较多的一种方法

Map<String,String>   map  =  new  HashMap<String,String>();
map.put("红色","red");
map.put("蓝色","blue");
map.put("黄色","yellow");
for(Map.Entry<String,String>  entry  : map.entrySet()){
    String   key = entry.getKey();
    String   value = entry.getValue();
    System.out.println(key+":"+value);
}

方法二:在for循环中遍历key或者value

此方法适用于只需要map中的key或者value时使用,在性能上比使用entrySet要好一些

Map<String,String>   map  =  new  HashMap<String,String>();
map.put("红色","red");
map.put("蓝色","blue");
map.put("黄色","yellow");
//遍历key值
for(String  key : map.keySet()){
    System.out.println(key);
}
//遍历value值
for(String  value : map.values()){
    System.out.println(value);
}

方法三:通过Iterator遍历

Map<String,String>   map  =  new  HashMap<String,String>();
map.put("红色","red");
map.put("蓝色","blue");
map.put("黄色","yellow");
Iterator<Entry<String,String>>  entries = map.entrySet().iterator();
while(entries.hasNext()){
    Entry<String,String>  entry = entries.next();
    String key = entry.getKey();
    String  value = entry.getValue();
    System.out.println(key+":"+value);
}

方法四:在for循环中同构get()方法遍历

这种方法相对来说效率较低,因为本身根据键来取值就是一个比较耗时的操作

Map<String,String>   map  =  new  HashMap<String,String>();
map.put("红色","red");
map.put("蓝色","blue");
map.put("黄色","yellow");
for(String  key : map.keySet()){
    String  value = map.get(key);
    System.out.println(key+":"+value);
}

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表