使用值从 HashMap 获取键的 Java 程序

要理解此示例,您应该具备以下 Java 编程的知识:

示例:获取 HashMap 中给定值的键

import java.util.HashMap;
import java.util.Map.Entry;

public class Main {
  public static void main(String[] args) {

    // create a hashmap
    HashMap<String, Integer> numbers = new HashMap<>();
    numbers.put("One", 1);
    numbers.put("Two", 2);
    numbers.put("Three", 3);
    System.out.println("HashMap: " + numbers);

    // value whose key is to be searched
    Integer value = 3;

    // iterate each entry of hashmap
    for(Entry<String, Integer> entry: numbers.entrySet()) {

      // if give value is equal to value from entry
      // print the corresponding key
      if(entry.getValue() == value) {
        System.out.println("The key for value " + value + " is " + entry.getKey());
        break;
      }
    }
  }
}

输出

HashMap: {One=1, Two=2, Three=3}
The key for value 3 is Three

在上面的例子中,我们创建了一个名为 numbers 的 HashMap. 在这里,我们想要获取值 3 的键。注意这一行,

Entry<String, Integer> entry : numbers.entrySet()

在这里,该 entrySet() 方法返回所有条目的集合视图。

  • entry.getValue() - 从条目中获取值
  • entry.getKey() - 从条目中获取密钥

在 if 语句中,我们检查条目中的值是否与给定值相同。并且,对于匹配值,我们得到相应的键。