-2
私はNimの少し基本的なゲームを作ろうとしています。私はJavaの初心者です。私がコードを実行すると、ちょうど2秒間実行され、私が求めていることをせずに停止します。それはおそらく単純な解決策ですが、私は尋ねなければなりませんでした。誰にも分かりますか?ここに私のコードです。Javaプログラムは何もせずに起動して停止します
import java.util.Scanner;
import java.util.Random;
public class Nim {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Random rand = new Random();
int playernum;
int cpunum = rand.nextInt(3)+1;
int gamenum = 21;
boolean win = false;
boolean turn = true;
while((win = false) && (turn = true)){
System.out.println("The number is 21. Enter a number from 1 - 3");
playernum = input.nextInt();
int remaining = gamenum - playernum;
System.out.println("The number is now " + remaining);
turn = false;
if((turn = false) && (gamenum > 0)){
System.out.println("Computer is thinking...");
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
比較に '=='を使用すると、割り当てに '='が使用されます。 – Jyr
これは、 'turn == false'ではなく'!turn'を常にチェックする必要がある理由です。 – shmosel
'while(!win && turn)'これに変更してみてください –