博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
keyset与entryset
阅读量:6183 次
发布时间:2019-06-21

本文共 969 字,大约阅读时间需要 3 分钟。

1、基本概述

Set<Map.Entry<K,V>> entrySet()  返回此映射中包含的映射关系的 set 视图。

Set<K>              keySet()      返回此映射中包含的键的 set 视图。

2、效率分析

对于keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。而entryset只是遍历了第一次,他把key和value都放到了entry中,所以就快了。

3、使用举例

Map<String, String> maps = new HashMap<String, String>();   

  //方法一: 用entrySet()   
  Iterator<Entry<String,String>> it = maps.entrySet().iterator();   
  while(it.hasNext()){   
   Map.Entry<String,String> m = it.next();   
   String key = m.getKey();
   String value= m.getValue(); 
  }   
  // 方法二:jdk1.5支持,用entrySet()和For-Each循环()   
  for (Map.Entry<String, String> m : maps.entrySet()) {   
   String key = m.getKey();
   String value= m.getValue();    
  }   
  // 方法三:用keySet()   
  Iterator<String> it2 = maps.keySet().iterator();   
  while (it2.hasNext()){   
   String key = it2.next();
   String value= maps.get(key);
  }   
  // 方法四:jdk1.5支持,用keySet()和For-Each循环   
  for(String m: maps.keySet()){   
   String key = m;
   String value= maps.get(m);
  }

 

 

keySet()取值方式示例图:

 

entrySet()取值方式示例图:

 

转载于:https://www.cnblogs.com/zhaoyan001/p/6293124.html

你可能感兴趣的文章
jquery mobile自动弹出popup
查看>>
hash注入神器WCE发布1.4 Beta版本
查看>>
CloudFoundry DEA运作源码分析
查看>>
SQL --索引
查看>>
快速排序
查看>>
在MyEclipse中创建Java Maven依赖项目
查看>>
《我的前半生》观后感
查看>>
高可用性及容灾的几个衡量指标
查看>>
Mysql最后补充+Java连接数据库
查看>>
前台语言与后台语言的本质区别
查看>>
机器学习实战第三章决策树
查看>>
Linux软件包安装和卸载(yum)
查看>>
添加device
查看>>
Kubernetes 之 kubeadm最佳实践
查看>>
计算机硬件系统组成--控制器(上)
查看>>
关于分页杂记
查看>>
企业网盘在企业数据管理中的优势
查看>>
我们是如何实现边缘计算与网络动态加速的?
查看>>
儒博受邀出席圣彼得堡国际经济论坛,探讨人工智能时代的教育话题
查看>>
nmon性能测试
查看>>