import java.util.Scanner;
public class PlayAgain {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
boolean playing = true;
char replayCheck;
do { //start do-while
System.out.print("Play again? (y/n): ");
boolean validInput = false;
while (validInput = false){ //start while
replayCheck = input.next().charAt(0);
switch (replayCheck) { //start switch
case 'y':
case 'Y':
validInput = true;
playing = true;
break;
case 'n':
case 'N':
validInput = true;
playing = false;
break;
default:
System.out.println("Invalid input! please enter (y/n)");
validInput = false;
break;
} //end switch
} //end while
} while (playing = true); //end do-while
System.out.println("Thanks for playing!");
} //end main
} //end class
Если пользователь вводит n/N
, программа воспроизводится снова, то же самое относится к любому другому входу. Логика кажется просто прекрасной, но я получаю «назначенное значение никогда не используется» на линии с replayCheck = input.next().charAt(0);
, поэтому я подозреваю, что проблема там.Java игра снова? (y/n)
Я немного нуоби. Любые предложения приветствуются!
Ваш пока тест не так: вы делаете аффектации вместо теста ... заменить: игра == истинный –