1. Введение
В этом кратком руководстве мы покажем, как заменить символ по определенному индексу в строке
в Java.
Мы представим четыре реализации простых методов, которые принимают исходную строку,
символ и индекс, в котором нам нужно его заменить.
2. Использование массива символов
Давайте начнем с простого подхода, используя массив char.
Здесь идея состоит в том, чтобы преобразовать String
в char[]
и затем присвоить новый 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 .
Экземпляры строк
неизменяемы, поэтому нам нужно создать новую строку или использовать StringBuilder
, чтобы дать нам некоторую изменчивость.
Как обычно, полный исходный код приведенного выше руководства доступен на GitHub .