Подтвердить что ты не робот

Как проверить, содержит ли строка в определенной позиции символ a-h?

Я знаю, что должен быть более простой способ проверить, но это то, что я делаю прямо сейчас.

if (g.charAt(0) == 'a' || g.charAt(0) =='b' || g.charAt(0) =='c' ||
    g.charAt(0) == 'd' || g.charAt(0) =='e' || g.charAt(0) =='f' ||
    g.charAt(0) == 'g' || g.charAt(0) =='h')
4b9b3361

Ответ 1

Опираясь на упорядочение символов и a..h - диапазон подряд:

char firstChar = g.charAt(0);
if (firstChar >= 'a' && firstChar <= 'h') {
   // ..
}

Ответ 2

Используйте регулярное выражение для этого. Вырезать первый символ вашей строки как подстроку и сопоставить ее.

if(g.substring(0, 1).matches("[a-h]") {
    // logic
}

Ответ 3

Вариант ответа на гемант:

if("abcdefgh".contains(g.substring(0,1))) do_something();

или

if("abcdefgh".indexOf(g.charAt(0)) >= 0) do_something();

Ответ 4

Другой способ сделать это:

if(Array.asList("abcdefgh".toCharArray()).contains(g.charAt(0)))
{
  //Logic
}