方式一
HashMap<String, String> map = new HashMap<>();
map.put("1","3");
map.put("2","2");
map.put("3","1");
String key = null;
for(String getKey: map.keySet()){
if(map.get(getKey).equals("1")){
key = getKey;
}
}
System.out.println(key);
注意,此方式只用于value值是唯一的情况,推荐用方式二
方式二
Map<String, String> map = new HashMap<>();
map.put("1", "子非我鱼");
map.put("2", "子非我鱼");
map.put("3", "魅言倾馨");
map.put("4", "魅言倾馨");
//结果是map的形式,value变成key,value:key的list变成value
Map<String, List<String>> map2 = map.entrySet().stream()
.map(m->String.format("%s:%s", m.getValue(), m.getKey()))
.collect(Collectors.groupingBy(s->s.split(":")[0]));
for (Map.Entry<String, List<String>> e : map2.entrySet()) {
System.out.println(e);
}
System.out.println(map2.get("子非我鱼"));