java 怎样通过hashmap的value得到key

java 怎样通过hashmap的value得到key

个人认为可以通过遍历 HashMap 来判断 value 从而得到Key下面是个测试,仅仅是个人方法,有错还望高手提出!import java.util.HashMap;import java.util.Map;public class Test{ //通过value拿到key public Object getKey(Map map,Object value) { for(Object key:map.keySet()) if(map.get(key).equals(value)) return key; return null; } public static void main(String[] args) { Map
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-04
用map的keySet
Map<String , String > mp = new HashMap<String, String >();
......
for(key : mp.keySet()){
if(mp.get(key).equals(value)){
System.out.println(key+":"+value);
......
}
}本回答被网友采纳
第2个回答  2013-07-29
hashmap是对应值得,value是值,key是它的标识
1、首先你要讲值对应的传入其中,
2、通过key获取值
例如:
Map<String, String> map = new HashMap<String, String>();
map.put("1", "11");
map.put("2", "22");

System.out.println("里面的值有:");
Collection<String> connection = map.values();
Iterator<String> iterator = connection.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next() + "..");
}

System.out.println("里面的键有:");
Set<String> key = map.keySet();
for (String string : key) {
System.out.println(string);
}

System.out.println("里面的键值对是:");
Set<Map.Entry<String, String>> set = map.entrySet();
Iterator<Map.Entry<String, String>> iterator2 = set.iterator();
while (iterator2.hasNext()) {
Map.Entry<String, String> entry = iterator2.next();
System.out.println("键是:" + entry.getKey() + "值是:" + entry.getValue());
}
第3个回答  2013-07-29
你这个问题有点意思,value怎么得到key,就算得到也可能有几个key,map只能保证key唯一,不能保证value唯一,所以通过value得到key这样需求应该可以用别的方式解决。
第4个回答  2013-07-29
package com.test;

import java.util.HashMap;
import java.util.Map;

public class Test {
public static void main(String[] args) {
Map<String , String > map = new HashMap<String, String>();
map.put("key", "value");
String val = map.get("key");
System.out.println(val);
}
}
以键值对的形式,进行赋值;
通过key来获取值;
通过value来获取值,和通过key获取值,都一样就是一种说法,公认为通过key来获取value值;

相似回答