2014-05-12 158 views
-3

我想寫一個方法來填充一些測試數據的地圖。我創建了一個名爲player的類,我希望player對象是地圖中的值。當我嘗試編譯下面的代碼時,我收到消息無法找到符號 - 變量string.I使用bluej。任何幫助,將不勝感激,因爲我目前有一點壓力。方法來填充地圖

/** 
    * Write a description of class Members here. 
    * 
    * @author (your name) 
    * @version (a version number or a date) 
    */ 
    public class Members 
    { 
     private Map<String, player>memberNumbers; 

     /** 
     * Constructor for objects of class Members 
     */ 
     public Members() 
     { 
     memberNumbers = new HashMap<>(); 
     } 

     /** 
     * A method to populate the memberNumbers Map. 
     * 
     */ 
     public void populateMap() 
     { 
      memberNumbers.put(String, player); 

     } 
    } 
+0

memberNumbers.put(字符串,播放器)

public void populateMap() { memberNumbers.put(String, player); } 

;是你的問題。它期望一個字符串,並傳遞一個代表內置類的關鍵字 – TheLostMind

+1

你知道地圖是做什麼的嗎?如果是的話,你認爲'memberNumbers.put(String,player)'是什麼意思? – Seelenvirtuose

回答

2

使用變量實例,而不是類型的關鍵字添加條目時Map

Player newPlayer = new Player(...); 
memberNumbers.put("player1", newPlayer); 

而且Java命名慣例表明,類名稱以大寫字母,給人Map<String, Player>這將避免混淆類型的實例

2

您需要實際競價玩家:

memberNumbers.put("1 - Fred", new Player()); 
memberNumbers.put("2 - Bob", new Player()); 
// and so forth 
0

替換

public void populateMap() 
     { 
      Player player= new Player(); 
      memberNumbers.put("some text", player); 

     }