Java复杂地图?

问题描述 投票:0回答:1

抱歉,我想不出其他标题。我正在用Java编写带有大量不同变量的程序。因此,我决定使用HashMaps(或在普通映射中)。但是我对Java中的复杂映射了解不多。我只知道“ HashMaps”以及如何使用它们。这是我可以使用的2个不同的HashMaps:

public class Storage {
public static HashMap<String, Boolean> user = new HashMap<>();
public static HashMap<Integer, Double> money = new HashMap<>();
}

所以,现在有点混乱了。因此,如您所见,有2个HashMap。在第一个HashMap中,每个键的值都是true或false。

public class test {
String s = "Tester";
  public void on() {
  if(Storage.user(s) == true) {
  //That part will be my question
   }
 }
}

因此,如果给定String的值为true,则应该有一个额外的HashMap,就像在Storage类中一样。但是我的意思是,每个String(如果确实如此)都应该有一个HashMap,并且它们不应共享一个Map。如我所说,我对地图了解不多,也许HashMaps是完全错误的。如果是这样,对不起。希望您能解决我的问题并知道合适的解决方案

java string hashmap boolean maps
1个回答
1
投票

如果要为每个用户分别指定一个Map<Integer, Double>(由String标识,则创建一个Map<String, Map<Integer, Double>>

您不需要到Boolean的映射,因为您可以使用containsKey()检查用户的存在,或者仅获取外部映射的值并检查null

class Storage {
    public static Map<String, Map<Integer, Double>> user = new HashMap<>();
}
Map<Integer, Double> money = Storage.map.get(userName);
if (money != null) {
    // code here
}
© www.soinside.com 2019 - 2024. All rights reserved.