map根据value获取key,找了一篇大佬的文章。本文来自简历。原文:https://www.techiedelight.com...1.entrySet()方法importjava.util.HashMap;importjava。实用程序地图;classMain{publicstaticKgetKey(Mapmap,Vvalue){for(Map.Entryentry:map.entrySet()){if(value.equals(entry.getValue())){返回entry.getKey();}}返回空值;}//Java8publicstaticKgetKey(Mapmap,Vvalue){returnmap.entrySet().stream().filter(entry->value.equals(entry.getValue())).findFirst().map(Map.Entry::getKey).orElse(null);}publicstaticvoidmain(String[]args){MaphashMap=newHashMap();hashMap.put("A",1);hashMap.put("B",2);hashMap.put("C",3);System.out.println(getKey(hashMap,2));//打印`B`}}2.keySet()方法importjava.util.HashMap;importjava.util.Map;classMain{publicstaticKgetKey(Mapmap,Vvalue){for(Kkey:map.keySet()){if(value.equals(map.get(key))){返回键;}}返回空值;}//Java8publicstaticKgetKey(Mapmap,Vvalue){returnmap.keySet().stream().filter(key->value.equals(map.get(键))).findFirst().get();}publicstaticvoidmain(String[]args){MaphashMap=newHashMap();hashMap.put("A",1);hashMap.put("B",2);hashMap.put("C",3);System.out.println(getKey(hashMap,2));//打印`B`}}3.反转Mapimportjava.util.HashMap;importjava.util.Map;类MyHashMapextendsHashMap{MapreverseMap=newHashMap<>();@OverridepublicVput(Kkey,Vvalue){reverseMap.put(value,key);返回super.put(key,value);}publicKgetKey(Vvalue){returnreverseMap.get(value);}}classMain{publicstaticvoidmain(String[]args){MyHashMaphashMap=newMyHashMap();hashMap.put("A",1);hashMap.put("B",2);hashMap.put("C",3);System.out.println(hashMap.getKey(2));//打印`B`}}4.Guava的BiMap类importcom.google.common.collect.BiMap;importcom.google.common.collect.ImmutableBiMap;classMain{publicstaticKgetKey(BiMapmap,Vvalue){returnmap.inverse().get(value);}publicstaticvoidmain(String[]args){BiMapbimap=ImmutableBiMap.of("A",1、“B”、2、“C”、3);System.out.println(getKey(bimap,2));//打印`B`}}5.ApacheCommonsCollectionsimportorg.apache.commons.collections4.BidiMap;importorg.apache.commons.collections4.bidimap.DualHashBidiMap;classMain{publicstaticKgetKey(BidiMapmap,Vvalue){returnmap.inverseBidiMap().get(value);}publicstaticvoidmain(String[]args){BidiMapbimap=newDualHashBidiMap<>();bimap.put("A",1);bimap.put("B",2);bimap.put("C",3);System.out.println(getKey(bimap,2));//打印`B`}}译文:https://www.techiedelight.com...