繁体   English   中英

为我的玩家分配名字时为什么会出现空指针异常?

[英]Why am I getting a null pointer exception when assigning names to my players?

我有一个Android活动,用户指定游戏中玩家的数量,以及赢得游戏所需的积分。 一旦用户单击“开始”,就应该使用多个Player对象创建一个新的Game对象。 我已经验证过正确地从EditText Views中提取数字,但由于某种原因,我在我的Game类中收到了一个空指针异常:

players[i].name = "Player " + i;

这是我的Game类的代码,还有一个Player类,它有一个数据成员名称(我没有包含)。

 public class Game{
  public int i;
  public int numOfPlayers;
  public int maxScore;
  Player[] players;

      public Game(int numOfPlayers, int maxScore){
          this.maxScore = maxScore;
          this.numOfPlayers = numOfPlayers;

          players= new Player[numOfPlayers];
           for(i =0; i<numOfPlayers;i++){
              players[i].name = "Player " + i;
          }
  }
 }

感谢您抽出宝贵时间阅读本文,感谢您的帮助。

您需要实例化每个播放器对象以及数组:

for(i =0; i<numOfPlayers;i++){
   players[i] = new Player();
   players[i].name = "Player " + i;
}

您创建了阵列,但没有创建任何玩家。 创建数组时,数组中的所有点最初都为null。

创建播放器,然后指定其名称。

players[i] = new Player();
players[i].name = "Player " + i;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM