StringBuilder.insert()
Вставляет значение в указанную позицию StringBuilder.
Доступно с: Java 5
Синтаксис
public StringBuilder insert(int offset, Object obj)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| offset | int | Индекс, перед которым вставить: 0 — в начало, length() — в конец. |
| obj | Object, String, int, char… | Что вставить. |
Возвращаемое значение
StringBuilderТот же StringBuilder.
Примеры
Вставка в начало и в середину:
void main() {
var sb = new StringBuilder("world");
sb.insert(0, "Hello ");
sb.insert(5, ",");
IO.println(sb);
}Результат:
Hello, worldРазделители тысяч вручную — вставка справа налево:
void main() {
var sb = new StringBuilder("1234567");
for (int i = sb.length() - 3; i > 0; i -= 3) {
sb.insert(i, ' ');
}
IO.println(sb);
}Результат:
1 234 567Примечания
Индекс за пределами 0..length() бросает StringIndexOutOfBoundsException. Вставка в начало сдвигает все символы, поэтому в длинном цикле дешевле добавлять в конец и в конце вызвать reverse().
См. также
- StringBuilder.append() — Добавляет значение в конец StringBuilder.
- StringBuilder.deleteCharAt() — Удаляет один символ по индексу. Для диапазона есть delete(start, end).
- StringBuilder — Изменяемая строка: удобна, когда текст собирается по частям, особенно в цикле.
В учебнике
- StringBuilder — StringBuilder в Java: изменяемая строка, append, insert, reverse, deleteCharAt, цепочки вызовов и сборка строки в цикле.