Могу ли я назначить 2 значения в переменную типа char? - PullRequest
0 голосов
/ 22 октября 2019

Мне интересно, могу ли я сравнить char с 2 значениями? Я пытаюсь сделать цикл, который будет повторяться до тех пор, пока какая-нибудь переменная не будет равна A, a, B, b, C или c. Есть ли способ игнорировать заглавные буквы?

Я пробовал следующий код:

 final char choiceA = 'a'|'A';
 final char choiceB = 'b'|'B';
 final char choiceC = 'c'|'C';

Когда я пробовал это работает, только когда я ставлю a, b или c. Если я поставлю заглавную букву, цикл продолжится.

1 Ответ

0 голосов
/ 22 октября 2019

Нет. Символ не может быть как в нижнем, так и в верхнем регистре, но вы можете игнорировать регистр при сравнении символов (путем преобразования ввода в верхний / нижний регистр). Например:

char c = Character.toLowerCase(choice);
switch (c) {
     case 'a':
       // choice is either 'a' or 'A'
     case 'b':
       // choice is either 'b' or 'B'
     case 'c':
       // choice is either 'c' or 'C'
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...