keySet,entrySet用法 以及遍历map的用法
2023-04-18 14:08:34 时间
Set<K> keySet() //返回值是个只存放key值的Set集合(集合中无序存放的)
Set<Map.Entry<K,V>> entrySet() //返回映射所包含的映射关系的Set集合(一个关系就是一个键-值对),就是把(key-value)作为一个整体一对一对地存放到Set集合当中的。
Set<Map.Entry<K,V>> entrySet() //返回映射所包含的映射关系的Set集合(一个关系就是一个键-值对),就是把(key-value)作为一个整体一对一对地存放到Set集合当中的。
1.keySet()
Map map=new HashMap();
Iterator it=map.keySet().iterator();
Object key;
Object value;
while(it.hasNext()){
key=it.next();
value=map.get(key);
System.out.println(key+":"+value);
}
2.entrySet()
Map map=new HashMap();
Iterator it=map.entrySet().iterator();
Object key;
Object value;
while(it.hasNext()){
Map.Entry entry = (Map.Entry)it.next();
key=entry.getKey();
value=entry.getValue();
System.out.println(key+"="+value);
}
public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(); map.put("1", "value1"); map.put("2", "value2"); map.put("3", "value3"); //第一种:普遍使用,二次取值 System.out.println("通过Map.keySet遍历key和value:"); for (String key : map.keySet()) { System.out.println("key= "+ key + " and value= " + map.get(key)); } //第二种 System.out.println("通过Map.entrySet使用iterator遍历key和value:"); Iterator<Map.Entry<String, String>> it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry<String, String> entry = it.next(); System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); } //第三种:推荐,尤其是容量大时 System.out.println("通过Map.entrySet遍历key和value"); for (Map.Entry<String, String> entry : map.entrySet()) { System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); } //第四种 System.out.println("通过Map.values()遍历所有的value,但不能遍历key"); for (String v : map.values()) { System.out.println("value= " + v); } }
相关文章
- 《赛博朋克 2077》等 DirectX 11/12 游戏可在 Linux 上体验 DLSS 了
- 你知道超八成用户还没升级Windows 11最大的原因吗?
- Windows11Upgrade 小工具:让你轻松绕过限制升级Windows 11
- 两种进入Windows 11安全模式的方法
- 超一半的企业工作站无法运行 Windows 11
- 为 Linux 5.16 准备的新版 Zstd 已就绪,最高带来 35% 的性能提升
- Google 将 FLoC 的实施时间推迟到 2022 年第四季度
- Windows 11 可导致某些 AMD 芯片性能下降,最大达 15%
- 你知道Shell脚本中$0 $1 $# $@ $* $? $$ 都是什么意思吗?
- WinRAR更新修复了Windows 11的改版右键菜单匹配问题
- 不满足Windows 11系统需求照样升级:教你绕过TPM、内存等限制
- 史上最简单的Windows系统安装指南:一文读懂
- 12步搞定Wsl 2,安装、交互、迁移、VSCode远程调试应有尽有
- 如何在不兼容设备上成功安装Windows 11系统
- 20 个提高生产力的 Linux 命令与技巧,用完带你飞
- Linux 上五个基于 Chromium 的浏览器
- 怎样在Windows 11中禁用VBS以提高性能?
- 升Windows 11后必做的一件事:性能可提升28%
- Linux 驱动挂载顺序分析
- 这才是搜索神器的完全体!Everything必备工具