Это моя программа, может кто-нибудь, пожалуйста, скажите мне, как я могу получить ключ карты на основе значения.Как получить ключ от карты, основанный на значении
Я попытался, как
String vendor_name = map.get("value");
Но его returing меня нулевой
import java.util.Collections;
import java.util.HashMap;
public class Test {
public static void main(String args[]) {
HashMap<String, String> for_highest_price_vendor = new HashMap<String, String>();
for_highest_price_vendor.put("vendor1", "20");
for_highest_price_vendor.put("vendor2", "25");
String maxValueInMap = (Collections.max(for_highest_price_vendor
.values())); // This will return max value in the Hashmap
String vendor_name = for_highest_price_vendor.get(maxValueInMap);
System.out.println(vendor_name);
}
}
related: http://stackoverflow.com/questions/1383797/java-hashmap-how-to-get-key-from-value – FourScore
Сопоставление является одним из способов, поэтому у вас есть итерация по всем ключам, чтобы получить один вам нужно (и мы предположили, что пары KV равны 1: 1). – meskobalazs
Что делать, если есть два разных ключа с одинаковым значением? Какой ключ вы хотели бы иметь? –