Функция deleteRange
Функция deleteRange удаляет подпоследовательность символов
из объекта StringBuilder в заданном диапазоне индексов.
Первый параметр startIndex - начальный индекс (включительно),
второй параметр endIndex - конечный индекс (исключительно).
После удаления оставшиеся символы сдвигаются влево.
Синтаксис
fun deleteRange(startIndex: Int, endIndex: Int): StringBuilder
Пример
Удалим символы с индекса 1 по индекс 3
из строки "abcde":
val sb = StringBuilder("abcde")
sb.deleteRange(1, 3)
println(sb)
Результат выполнения кода:
String "ade"
Пример
Удалим все символы кроме первого и последнего:
val sb = StringBuilder("12345")
sb.deleteRange(1, 4)
println(sb)
Результат выполнения кода:
String "15"
Пример
Если начальный и конечный индекс совпадают, ни один символ не будет удален:
val sb = StringBuilder("abcde")
sb.deleteRange(2, 2)
println(sb)
Результат выполнения кода:
String "abcde"
Пример
Функция возвращает ссылку на тот же объект StringBuilder,
что позволяет использовать цепочку вызовов:
val sb = StringBuilder("abcde")
val res = sb.deleteRange(1, 3).append("xyz")
println(res)
Результат выполнения кода:
String "adexyz"
Исключения
Метод может выбрасывать исключение IndexOutOfBoundsException,
если указаны недопустимые значения индексов:
val sb = StringBuilder("abcde")
try {
sb.deleteRange(-1, 3)
} catch (e: IndexOutOfBoundsException) {
println("Error: " + e.message)
}
Результат выполнения кода:
Error: start -1, end 3, length 5