Рубрики
Без рубрики

Замените символ в определенном индексе в строке в Java

Изучите несколько методов замены символа в определенном индексе в строке Java.

Автор оригинала: baeldung.

1. введение

В этом кратком руководстве мы продемонстрируем , как заменить символ в определенном индексе в Строке на Java.

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

2. Использование массива символов

Давайте начнем с простого подхода, используя массив char.

Здесь идея состоит в том, чтобы преобразовать Строку в символ [] , а затем назначить новый символ с заданным индексом. Наконец, мы строим желаемую Строку из этого массива.

public String replaceCharUsingCharArray(String str, char ch, int index) {
    char[] chars = str.toCharArray();
    chars[index] = ch;
    return String.valueOf(chars);
}

Это низкоуровневый подход к дизайну, который дает нам большую гибкость.

3. Использование метода подстроки

Подход более высокого уровня заключается в использовании метода substring() класса String .

Он создаст новую строку путем объединения подстроки исходной Строки перед индексом с новым символом и подстрокой исходной Строки после индекса:

public String replaceChar(String str, char ch, int index) {
    return str.substring(0, index) + ch + str.substring(index+1);
}

4. Использование StringBuilder

Мы можем получить тот же эффект, используя StringBuilder . Мы можем заменить символ на определенный индекс, используя метод setCharAt():

public String replaceChar(String str, char ch, int index) {
    StringBuilder myString = new StringBuilder(str);
    myString.setCharAt(index, ch);
    return myString.toString();
}

5. Заключение

В этой статье мы сосредоточились на нескольких способах замены символа в определенном индексе в Строке с помощью Java .

Экземпляры String неизменяемы, поэтому нам нужно создать новую строку или использовать StringBuilder , чтобы обеспечить некоторую изменчивость.

Как обычно, полный исходный код для приведенного выше руководства доступен на GitHub .