簡體   English   中英

檢查地圖中是否存在ArrayList

[英]Checking if an ArrayList exists in a map

我的足球隊有5個不同的球隊,我正在嘗試制作一個程序來跟蹤每個球隊注冊的球員。 我希望能夠添加一個新玩家,但首先程序會檢查該玩家是否已經注冊。 我也可以在將來添加新的團隊,我想再次檢查該團隊是否已經存在。

我用了一個Map變量

private Map<String, List<Player>> teamName;

然后在構造函數中初始化它

teamName = new HashMap<>();

然后,我有一個方法來添加新的團隊和新玩家,我希望方法檢查俱樂部名稱是否已經存在,然后如果它存在,則將玩家名稱添加到該俱樂部。 如果它不存在那么我希望程序添加一個新的俱樂部,然后將該球員添加到該俱樂部。

到目前為止,我有一種添加新玩家的方法,

public void newPlayer(String club, Player name) {
}

我不確定我現在如何檢查club是否存在ArrayList,如果它確實為此列表添加了name ,如果club不存在,那么我想創建一個新列表並為其添加name

如果我然后運行程序並寫,

Player jamesAtkinson = new Player();

newPlayer("first team", jamesAtkinson);

它會檢查地圖中是否有名為“第一隊”的列表,然后將James Atikinson添加到其中,或者創建一個名為第一隊的新列表,然后添加James Atkinson。

這甚至可能嗎?

雖然您在問題中提供的代碼存在一些問題。 您正在尋找的是掛起Map接口的.containsKey函數。

if (players.containsKey("first team") {
     // Do something
} else {
     List<Player> firstTeam = new ArrayList<>();
     firstTeam.add(jamesAtikson);
     players.put("first team", jamesAtikson);
} 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM