java - 如何更改 map 中的 map 内的值?

标签 java hashmap

我有一个字符串映射和一个映射,我想更改内部映射内的值,但我找不到执行此操作的方法。如何获取并更改内部 map 内的特定值?

这是我的 map :

String teamName;

Map<String, Integer> players = new HashMap<String,Integer>();   

Map<String, Map> teams = new HashMap<String, Map>();

teams.put(teamName, players);

我想在球队 map 的球员 map 内增加或减少这个整数值。但由于我的其余代码,我无法直接使用玩家 map ,我需要从团队 map 到达它。

最佳答案

您所需要做的就是访问相应团队的 map ,然后设置号码。

如果您自始至终都使用泛型,将会有所帮助:

String teamName = "someteam";
Map<String, Integer> players = new HashMap<String,Integer>();   
Map<String, Map<String, Integer>> teams = new HashMap<String, Map<String, Integer>>();
teams.put(teamName, players);

并以 teamName 作为键更改团队中的玩家数量:

teams.get(teamName).put("somename", 123);
//Or to directly overwrite with an increment:
int currentValue = teams.get(teamName).get("somename");
teams.get(teamName).put("somename", currentValue + 1);

关于java - 如何更改 map 中的 map 内的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44087980/

相关文章:

java - 在Java应用程序中调度任务时如何使用NTP服务器?

java - 为什么我不能在匿名类中使用 <Class>.this?

java - 如何迭代包含数组列表的Hashmap

java - 如何从 arraylist 中制作 HashMap ,其中具有重复值的一列作为键,相应的行作为值

java - HashMap 方法不理解它们是如何调用的

java - 如何从Android中的第三方库中删除多余的包?

Java acm、GRect方法、继承add方法不显示

java - 输出列表错误?

java - 使用用户输入的字符串在 HashMap 中搜索关键字

java - 我正在使用 .hashCode() 创建哈希值。 Java 中是否有一个库可以执行双重哈希来解决冲突?