我浏览了各个论坛和站点,试图找出我要去哪里,但没有运气。
public void updatePlayerLabels()
{
if(currPlayer == 0)
lblP1Name.setText(lblP1Name.setText(myPlayers[currPlayer].getName() + " - " + myPlayers[currPlayer].getScore()));
else
lblP2Name.setText(lblP2Name.setText(myPlayers[currPlayer].getName() + " - " + myPlayers[currPlayer].getScore()));
}
该错误似乎出现在我在两个语句上都调用getScore()方法的地方。我收到2条“此处不允许的'void'类型”消息。这是播放器类的片段。
public Player(int number, String name)
{
this.number = number;
this.name = name;
score = 0;
}
public int getScore()
{
return score;
}
据我所知,在构造函数中将score设置为0并在调用该方法之前构造播放器,我应该不会看到该错误。
另外,我在代码的其他地方使用了getScore()方法,没有任何问题,我确信这是有问题的方法,因为当我从那两行中删除它时,错误消失了。
最佳答案
您两次调用lblP1Name.setText()
(第二次调用lblP1Name.setText()
的“结果”)
它应该是:
if(currPlayer == 0)
lblP1Name.setText(myPlayers[currPlayer].getName() + " - " + myPlayers[currPlayer].getScore());
else
lblP2Name.setText(myPlayers[currPlayer].getName() + " - " + myPlayers[currPlayer].getScore());