详解JAVA里面获取map的key和value的方法
程序员文章站
2023-11-22 11:56:40
获取map的key和value的方法分为两种形式:
map.keyset():先获取map的key,然后根据key获取对应的value;
map..entr...
获取map的key和value的方法分为两种形式:
- map.keyset():先获取map的key,然后根据key获取对应的value;
- map..entryset():同时查询map的key和value,只需要查询一次。
同时遍历key和value时,keyset与entryset方法的性能差异取决于key的具体情况,如复杂度(复杂对象)、离散度、冲突率等。换言之,取决于hashmap查找value的开销。entryset一次性取出所有key和value的操作是有性能开销的,当这个损失小于hashmap查找value的开销时,entryset的性能优势就会体现出来。
只遍历key时,keyset方法更为合适,因为entryset将无用的value也给取出来了,浪费了性能和空间。
只遍历value时,使用vlaues方法是最佳选择,entryset会略好于keyset方法。
通过map.keyset() 方法
方法一:通过得到key的值,然后获取value
for(string key : map.keyset()){ string value = map.get(key); system.out.println(key+" "+value); }
方法二:使用迭代器,获取key
iterator<string> iter = map.keyset().iterator(); while(iter.hasnext()){ string key=iter.next(); string value = map.get(key); system.out.println(key+" "+value); }
通过map.entryset()方法
方法一:循环map里面的每一对键值对,然后获取key和value
for(entry<string, string> vo : map.entryset()){ vo.getkey(); vo.getvalue(); system.out.println(vo.getkey()+" "+vo.getvalue()); }
方法二:使用迭代器,获取key
iterator<entry<string,string>> iter = map.entryset().iterator(); while(iter.hasnext()){ entry<string,string> entry = iter.next(); string key = entry.getkey(); string value = entry.getvalue(); system.out.println(key+" "+value); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读
-
详解JAVA里面获取map的key和value的方法
-
Java 遍历取出Map集合key-value数据的4种方法
-
java根据value获取Map对象的key
-
【Java必修课】通过Value获取Map中的键值Key的四种方法
-
js获取对象,数组所有属性键值(key)和对应值(value)的方法示例
-
js循环map 获取所有的key和value的实现代码(json)
-
Java 遍历取出Map集合key-value数据的4种方法
-
详解JAVA里面获取map的key和value的方法
-
java根据value获取Map对象的key
-
js对象常用属性和方法:复制一个对象,获取一个对象的所有key和所有value的方法