从地图中获取密钥及其特定值
Posted
技术标签:
【中文标题】从地图中获取密钥及其特定值【英文标题】:Getting the key and its specific value from map 【发布时间】:2012-11-13 01:54:17 【问题描述】:我使用地图如下
Map<String, String> propMap = new LinkedHashMap<String, String>();
我看到有两种方法可以使用keySet()
(获取键列表)
和值来获取值列表,但我的问题是如何在它们之间建立联系
例如 key1 的值为 2。
我想像下面这样使用获取值
Map<String, String> propMap2 = propterm.getPropMap();
Set<String> keySet = propMap2.keySet();
但我如何将其与他各自的价值联系起来?
【问题讨论】:
【参考方案1】:如果你想使用每一对key
和value
,你可以使用propMap.entrySet()
方法,它返回key, value
中的Map.Entry
:-
for (Map.Entry<String, String> entry: propMap.entrySet())
System.out.println(entry.getKey() + " : " + entry.getValue());
或者,如果您想知道如何使用propMap.keySet()
执行此操作,您可以遍历您获得的Set<Key>
,并为每个键使用propMap.get(key)
,以获取特定键的值:-
Set<String> keySet = propMap2.keySet();
for (String key: keySet)
System.out.println(propMap.get(key));
来自this post的回答:-
使用后一种方法,如果您经常访问 key-value
对,那么对于每个键,都会调用 map.get()
方法,在 HashMap
的情况下,需要 hashCode()
和评估key
对象的equals()
方法以找到关联的值*。在第一种情况(entrySet)
中,消除了额外的工作。
【讨论】:
@Cratylus.. 看看这个帖子:-***.com/questions/3870064/…以上是关于从地图中获取密钥及其特定值的主要内容,如果未能解决你的问题,请参考以下文章
仅当特定密钥对值与可迭代匹配时,才在 JSON 对象中获取多个 JSON 密钥对值
如何从 OnMarkerClickListener 内的 Firebase 数据库中获取特定值?