gpt4 book ai didi

java - HashMap/ArrayList 不会为每个键取多个值

转载 作者:行者123 更新时间:2023-12-02 01:31:13 24 4
gpt4 key购买 nike

我想创建一个 HashMap,它具有 String 类型的键和在另一个类中设置的对象列表的值。

我尝试过的代码的工作原理是,它向映射添加一个键和一个值,但不会向 1 个键添加多个值。即我希望 Key x 具有值 1,2 和 3,但它似乎只是覆盖最后一个值而不是添加另一个值。

这是我当前的代码:

    public class LeagueAdmin {

private Map<String, List<Team>> teams;

/**
* Constructor for objects of class LeagueAdmin
*
*/
public LeagueAdmin() {
this.teams = new HashMap<>();
}

public void addTeam(String division, Team team) {
if(!this.teams.containsKey(division))
{
List<Team> Team = new ArrayList<>();
Team.add(team);
this.teams.put(division, Team);
} else {
List<Team> newTeam = this.teams.get(division);
}
}
}

正如我所说,当我向键字符串“top”添加多个值时,例如,我希望“top”向我显示添加到其中的所有值,而不是仅显示添加的最新值。另外,如上所述,Team 对象是在单独的类文件中处理的。

最佳答案

你的else不完整。您创建了一个列表,但当它发现键 division 存在时,永远不会向其中添加内容。添加

newTeam.add(team);

到你的 else 语句

关于java - HashMap/ArrayList 不会为每个键取多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56031072/

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