Так строки в Java неизменяемы, нет прямого функционала удалить символ в строке. Но для решения этой проблемы можно создать новую строку без этого символа.
Как удалить символ в строке
Так как строки в Java иммутабельны, нам придётся сконструировать новую строку из старой.
Допустим, у нас есть строка «Hello wWorld!», и нам нужно удалить лишнюю букву «w»:
String s = "Hello wWorld!";
Для этого сначала найдём позицию символа «w»:
int i = s.indexOf("w");
Символ «w» находится на шестой позиции в искомой строке. Затем сконструируем новую строку с помощью метода substring:
String s2 = s.substring(0, i) + s.substring(i + 1);
Здесь мы создали новую строку из искомой строки, скопировав взяв из искомой строки все символы до «w» и символы после «w»:
System.out.println(s2); // Hello World!
Исходный код
public class RemoveCharFromString { public static void main(String[] args) { String s = "Hello wWorld!"; int i = s.indexOf("w"); // 6 String s2 = s.substring(0, i) + s.substring(i + 1); System.out.println(s2); // Hello World! } }
Заключение
Хоть мы и не можем изменить содержимое строки, мы можем создать новую строку из исходной строки с помощью вспомогательных методов: String.substring, String.indexOf.