如何根據(jù)value查找hashmap中的鍵

小樊
81
2024-09-27 19:06:44

在Java中,可以使用HashMapentrySet()方法來(lái)遍歷所有的鍵值對(duì),然后通過(guò)Value查找對(duì)應(yīng)的Key。以下是一個(gè)簡(jiǎn)單的示例:

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

public class Main {
    public static void main(String[] args) {
        HashMap<String, Integer> hashMap = new HashMap<>();
        hashMap.put("one", 1);
        hashMap.put("two", 2);
        hashMap.put("three", 3);

        int valueToFind = 2;
        String key = getKeyByValue(hashMap, valueToFind);

        if (key != null) {
            System.out.println("找到鍵: " + key + ",值為: " + valueToFind);
        } else {
            System.out.println("未找到值為: " + valueToFind + " 的鍵");
        }
    }

    public static <K, V> K getKeyByValue(Map<K, V> map, V value) {
        for (Map.Entry<K, V> entry : map.entrySet()) {
            if (entry.getValue().equals(value)) {
                return entry.getKey();
            }
        }
        return null;
    }
}

在這個(gè)示例中,我們創(chuàng)建了一個(gè)HashMap,然后使用getKeyByValue()方法根據(jù)給定的值查找對(duì)應(yīng)的鍵。如果找到了對(duì)應(yīng)的鍵,該方法將返回該鍵;否則,它將返回null

0