Če imam vrednost "foo"
in HashMap<String> ftw
, za katero ftw.containsValue("foo")
vrne true
, kako lahko dobim ustrezen ključ? Ali moram narediti zanko skozi hashmap? Kakšen je najboljši način za to?
Enoznačnega odgovora ni, saj lahko več ključev prikaže isto vrednost. Če uveljavljate edinstvenost z lastno kodo, je najboljša rešitev, da ustvarite razred, ki uporablja dva Hashmapa za spremljanje preslikav v obe smeri.
Če želite poiskati vse ključe, ki so preslikani na to vrednost, iterirajte po vseh parih v hashmapu z uporabo map.entrySet()
.
Zdi se, da je najboljši način, da iterirate po vnosih z uporabo map.entrySet()
ker map.containsValue()
to verjetno počne v vsakem primeru.