gpt4 book ai didi

java - 如何从嵌套的 HashMap 中检索键而不是其值

转载 作者:行者123 更新时间:2023-12-01 22:18:17 25 4
gpt4 key购买 nike

我正在尝试找出一种快速方法来访问嵌套 HashMap 的键。

我对java很陌生,我知道如何访问最里面的 HashMap 的值(使用get()方法),但我不知道如何轻松地访问内部 HashMap 的键。hashMap 有自己的类,定义如下:

HashMap<String, HashMap<String, HashMap<Double, Integer>>> data;
data = new HashMap<String, HashMap<String, HashMap<Double, Integer>>>();

通过使用我在类中定义的 get() 方法,我可以完美地获取最内部 HashMap 的值:

int get(String a, String b, Double c){
if (data.containsKey(a)){
if (data.get(a).containsKey(b)){
if (data.get(a).get(b).containsKey(c){
return data.get(a).get(b).get(c);
}
}
}
return 0;

现在我想为此类和 HashMap 定义一个方法 getk() ,它允许我通过输入前两个键来检索内部 HashMap 的键,如下所示:

double getk(String a, String b){
if (data.containsKey(a)){
if (data.get(a).containsKey(b)){
return ***I don't know what to put here***;
}
}
return 0;
}

编辑附加信息:我想要获取的键“c”与键“b”具有 1:1 关系。有可能轻松解决这个问题吗?

非常感谢您的时间和帮助;)

最佳答案

您可以调用hashmap对象中的keySet()方法来获取hashmap中所有键的Set。

myMap.keySet();

https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html#keySet--

关于java - 如何从嵌套的 HashMap 中检索键而不是其值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58610744/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com