Мне нужно реализовать оба метода в этом коде, используя do-while l oop в основном методе.
Каждый раз, когда я использую предлагаемые Java исправления, такие как переименование inputChar, инициализация переменной, или объявив это вне цикла; l oop все еще выполняется, даже если я ввожу "E". Любая помощь будет принята с благодарностью.
import java.util.Scanner;
public class Practice {
static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) {
do {
char inputChar = getInputCharFromUser();
String value = getValueFromChar(inputChar);
System.out.println(value);
} while (inputChar != ('E'));
scanner.close();
}
public static char getInputCharFromUser() {
final String CHAR_PROMPT = "Enter input char: ";
System.out.println(CHAR_PROMPT);
char inputChar = scanner.nextLine().charAt(0);
return inputChar;
}
public static String getValueFromChar(char inputChar) {
switch (inputChar)
{
case 'P':
return "Player";
case 'p':
return "Player";
case 'X':
return "Wall";
case 'x':
return "Wall";
case ' ':
return "Empty";
default:
return "Invalid";
}
}
}