Я очень плохо знаком с кодом и сталкиваюсь с проблемой, когда пытаюсь создать оператор if / else со сравнением символов.В коде, который я пытаюсь написать, пользователь «рискует» тем, считают ли они, что бросок костей будет выше 7, ниже 7 или ровно 7. Я прикрепил код, который написал для метода, который выбираетих предположение.Когда я ввожу 'h', 'H', 'l' или 'L', я получаю сообщение об ошибке, но когда я ввожу 'S' или 's', метод работает нормально.Есть идеи почему?Заранее спасибо!
private static char getHighLow(Scanner inScanner) {
System.our.print("High, low or sevens (H/L/S): ");
String str = in.Scanner.nextLine();
char highLow = str.charAt(0);
char highOne = 'h'; char highTwo = 'H'; char lowOne = 'l'; char lowTwo = 'L'; char sevenOne = 's'; char sevenTwo = 'S';
if ((highLow == highOne) | (highLow == highTwo)) {
highLow = 'h';
}
if ((highLow == lowOne) | (highLow == lowTwo)) {
highLow = 'l';
if ((highLow == sevenOne) | (highLow == sevenTwo)) {
highLow = 's';
}
else {
System.out.println("ERROR- enter h, l, or s");
System.out.print("High, low, or sevens (H/L/S): ");
str = in.Scanner.nextLine();
highLow = str.charAt(0);
}
return highLow;
}