Алфавит константы в Java?
у меня есть ситуация, когда мне нужно найти индекс Буквы в алфавите. В Python я мог бы использовать string.ascii_lowercase
или string.ascii_uppercase
. Есть ли что-то подобное в Java?
очевидно, я мог бы сделать:
private static char[] alphabet = "abcdefghijklmnopqrstuvwxyz".toCharArray();
но после стольких Python, это заставляет меня задаться вопросом, если это встроено где-то.
2 ответов
хотя я бы предпочел подход Колинда, когда он подходит, я просто хочу упомянуть, что Java на самом деле имеет какой-то API для этого. Это позволяет анализировать числа с радиусом до 36, которые используют 10 цифр от '0'-'9'
и буквы 'a'-'z'
для остальной части диапазона (в любом случае).
char letter = ...
int index = Character.digit( letter, 36 ) - 10;
и обратно
int index = ...
char ch = Character.forDigit( index + 10, 36 );
если вы действительно хотите использовать это для создания или разбора чисел radix 36, вы можете использовать Integer.parseInt
и Integer.toString
статический метод реализации, которые принимают параметр radix.