Мой вопрос: как ограничить ввод пользователем Y/N или y/n (в Java). В настоящее время я использую equals() и планирую изменить их на equalsignorecase(), это должно позаботиться о части дела. Однако это не мешает пользователю вводить другие символы (например: H или h). В настоящее время, когда символ, кроме y или n, вводится, программа переходит прямо к «спасибо за воспроизведение сообщения» и к концу игры.Java, BufferedReader, ограничить ввод пользователя, y/n
Я относительно новичок в программировании, поэтому, пожалуйста, приведите примеры с предложением, желательно полным примером. Мне действительно очень далеко. Дополнительно, если вы чувствуете, что этот раздел кода может быть написан лучше, я открыт для перезаписи, но еще раз просьба представить полный пример.
Я понимаю, что этот вопрос немного широк для stackoverflow, но я действительно мог бы использовать понимание более опытных программ. Спасибо за ваше время.
// creates instance of BufferedReader
// prompts user to play the game again
// places user input in a try
// if user wants to play again, call startGame()
// if user dosen't want to play again, keep asking anyways
private void showPlayAgainMessage()
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println();
System.out.println("Do you want to play again? (y/n)");
try
{
String playAgain = br.readLine();
// Do you want to play again? Is y.
if(playAgain.equals("y"))
{
startGame();//else prompt another question with if else
}
// Do you want to play again? Is n.
else if(playAgain.equals("n"))
{
System.out.println();
System.out.println("Last chance. Play again? (y/n)");
playAgain = br.readLine();
// Last chance. Play again? Is y.
if(playAgain.equals("y"))
{
startGame();
}
// Last chance. Play again? Is n.
else if(playAgain.equals("n"))
{
System.out.println();
System.out.println("How about Minesweeper? (y/n)");
playAgain = br.readLine();
// How about Minesweeper? Is y.
if(playAgain.equals("y"))
{
System.out.println();
System.out.println("I really wish we had Minesweeper...");
System.out.println("Lots of Hangman though...Hangman? (y/n)");
playAgain = br.readLine();
// Lots of Hangman though...Hangman? Is y.
if(playAgain.equals("y"))
{
startGame();
}
// Lots of Hangman though...Hangman? Is n.
else if (playAgain.equals("n"))
{
System.out.println();
System.out.println("ok...");
}
}
}
}
}
все это отличные идеи. В настоящее время я ищу кого-то, чтобы просмотреть мою программу и предоставить мне некоторые отзывы, это игра в палач, 5 классов, ничего сумасшедшего. Если вы могли бы сэкономить немного времени, пожалуйста, напишите мне по адресу [email protected] – user3735449