我有以下代碼片段,但是當我執行它時,不會打印出骰子的值。當使用掃描儀類輸入時字符串未被打印
這裏是源代碼:
System.out.println("Player 1s Go.\nEnter R to Roll and H to Hold");
input = scanner.next();
while (input.equals("R")) {
input = scanner.next();
die.throwDie();
System.out.println("Value on Die: " + die.getFaceValue());
if (rolledOne()) {
player1Rolled.clear();
System.out.println("Player 1 scored 0, End of turn");
holdPlayer1 = true;
holdPlayer2 = false;
break;
} else {
player1Rolled.add(die.getFaceValue());
}
}
getFaceValue()
是用於管芯類返回管芯的值的存取方法。 throwDie()
是一個改變方法,它可以改變數值並模擬骰子的滾動。
輸出我得到的是以下幾點:
Player 1s Go.
Enter R to Roll and H to Hold
*R
R*
Value on Die: 5
*R*
Value on Die: 5
*R*
請注意,我必須告訴它滾動兩次,那是滾動兩次,但只打印出第二卷的價值。
問題是? – Steven 2012-02-24 09:49:58
你說你的代碼沒有打印死亡的值,但你的示例輸出是這樣的。 – mcfinnigan 2012-02-24 09:52:26
看我的編輯。它必須首先滾動兩次。 – Dean 2012-02-24 10:18:31