public void runTheHorses()
{
for (int i=0; i < 4; i++) {
if (!gameOver) {
raceDice.rollDice();
if (horses[i].getMovingNumber() < raceDice.getSum()) {
horses[i].updatePosition(raceDice.getDifference());
if (horses[i].getPosition() >= finishLine) {
gameOver=true;
winner=horses[i].getName();
}
}
horses[i].setMovingNumber();
}
}
} // end method
我正在参加赛马计划。这只是一个简单的学校练习,但是当我尝试编译它时会给我一个错误信息。在该行:
if (horses[i].getMovingNumber**()** < raceDice.getSum()){
如果是粗体,( .getMovingNumber 之后的括号),它会给出“此处不允许的''void'类型”错误消息。我不知道该怎么办。 getMovingNumber 的原始方法是:
private int movingNumber=4;
public int getMovingNumber()
{
return movingNumber;
}
答案 0 :(得分:3)
好像您的raceDice.getSum()
返回类型无效。