Я делаю проект (на основе учебника). У меня есть оператор switch, и для каждого случая есть значение по умолчанию, если вход пользователя недействителен, и я пишу на консоли «Извините, я не понимаю ваш запрос». Однако, если пользователь вместо того, чтобы писать что-либо, пишет «exit», программа должна закончиться без появления предложения «Я не понимаю запрос».Ввод игнорирует оператор IF, если по умолчанию в коммутаторе
Это указано в моем утверждении IF в начале. То, что мой текущий проект делает в тот момент, когда я набираю «exit», показывает эту строку, а затем останавливается. Я не понимаю, как программа полностью игнорирует этот оператор IF в начале.
public class MainGame {
public static GameSave gameSave = new GameSave();
public static String user = "";
public static Scanner scanner = new Scanner(System.in);
public static String question;
public static int relationshipPoints;
public static void main(String[] args) {
Random random = new Random();
question = gameSave.loadGame();
// relationshipPoints = gameSave.loadPoints();
RelationshipPoints points = new RelationshipPoints();
System.out.println("\n\t*** TEXT_GAME: FIRSTDATE ***\n");
System.out.println("-You can exit the game at any time by typing 'exit'.-\n\n");
while (true) {
if (user.equalsIgnoreCase("exit")) {
System.exit(1);
break;
} else {
switch (question) {
[...]
case "2":
switch (user = scanner.next()) {
case "1":
System.out.println("\n\nThe guy you met last night was nice. You want to "
+ "get back into contact with him. Why don't you check your phone for a number?");
question = "2A";
gameSave.saveGame("2A");
break;
case "2":
System.out.println("\n\n");
question = "0";
break;
default:
System.out.println("\nI do not understand your request.\n");
question = "2";
break;
}
break;
case "2A": [...]
Пожалуйста, улучшите этот код до [mcve] (http://stackoverflow.com/help/mcve) –
Попробуйте: user.trim(). EqualsIgnoreCase («exit»); 'может быть, что символ новой строки это то, что не удалось сравнивать – alfasin
@TimothyTruckle жаль, что я не знаю, как это сделать, код огромен, я не могу скопировать все это! –