Перейти к основному содержимому

Получение символа по индексу из строки в Java

· 2 мин. чтения

1. Введение

Метод charAt() класса String возвращает символ в заданной позиции строки . Это полезный метод, доступный в версии 1.0 языка Java.

В этом уроке мы рассмотрим использование этого метода на нескольких примерах. Мы также узнаем, как получить символ в позиции как строку.

2. Метод charAt ()

Давайте посмотрим на сигнатуру метода из класса String :

public char charAt(int index) {...}

Этот метод возвращает char по индексу, указанному во входном параметре. Индекс варьируется от 0 (первый символ) до общей длины строки – 1 (последний символ).

Теперь давайте посмотрим на пример:

String sample = "abcdefg";
Assert.assertEquals('d', sample.charAt(3));

В данном случае результатом стал четвертый символ строки — символ «d».

3. Ожидаемое исключение

Исключение времени выполнения IndexOutOfBoundsException возникает , если индекс параметра отрицателен или равен или превышает длину строки:

String sample = "abcdefg";
assertThrows(IndexOutOfBoundsException.class, () -> sample.charAt(-1));
assertThrows(IndexOutOfBoundsException.class, () -> sample.charAt(sample.length()));

4. Получить символ в виде строки

Как мы упоминали ранее, метод charAt() возвращает char . Часто вместо этого нам нужен строковый литерал.

Существуют разные способы преобразования результата в String . Давайте предположим, что ниже строковый литерал для всех примеров:

String sample = "abcdefg";

4.1. Использование метода Character.toString() ``

Мы можем обернуть результат charAt( ) методом Character.toString() :

assertEquals("a", Character.toString(sample.charAt(0)));

4.2. Использование метода String.valueOf() ``

Наконец, мы можем использовать статический метод String . значение() :

assertEquals("a", String.valueOf(sample.charAt(0)));

5. Вывод

В этой статье мы узнали, как использовать метод charAt() для получения символа в заданной позиции строки . Мы также увидели, какие исключения могут возникнуть при его использовании, и несколько различных способов получения символа в виде строки .

И, как всегда, все фрагменты можно найти на Github .