Функция dropLast

Функция dropLast создает новую коллекцию, содержащую все элементы исходной коллекции за исключением последних n элементов. Если n больше размера коллекции, возвращается пустая коллекция.

Синтаксис

kotlin// Для List, Set и других коллекций
fun <T> Iterable<T>.dropLast(n: Int): List<T>
kotlin// Для Array
fun <T> Array<T>.dropLast(n: Int): List<T>
kotlin// Для String (возвращает String)
fun String.dropLast(n: Int): String

Поддерживаемые типы коллекций

Функция dropLast работает со следующими типами коллекций:

Для Map функция dropLast не доступна напрямую, но можно использовать toList() для преобразования.

Пример

Удалим последние 2 элемента из списка:

kotlinval list = listOf(1, 2, 3, 4, 5)
val res = list.dropLast(2)
println(res)

Результат выполнения кода:

kotlinList [1, 2, 3]

Пример

Удалим последние 3 элемента из массива:

kotlinval array = arrayOf('a', 'b', 'c', 'd', 'e')
val res = array.dropLast(3)
println(res)

Результат выполнения кода:

kotlinList ['a', 'b']

Пример

Удалим последние 4 символа из строки:

kotlinval str = "abcde"
val res = str.dropLast(4)
println(res)

Результат выполнения кода:

kotlinString "a"

Пример

Если количество удаляемых элементов больше размера коллекции, возвращается пустая коллекция:

kotlinval set = setOf(1, 2, 3)
val res = set.dropLast(5)
println(res)

Результат выполнения кода:

kotlinList []

Пример

Удаление 0 элементов возвращает исходную коллекцию:

kotlinval list = listOf(1, 2, 3, 4, 5)
val res = list.dropLast(0)
println(res)

Результат выполнения кода:

kotlinList [1, 2, 3, 4, 5]

Смотрите также

  • функцию drop,
    которая удаляет первые n элементов коллекции
  • функцию take,
    которая возвращает первые n элементов коллекции
  • функцию takeLast,
    которая возвращает последние n элементов коллекции
  • функцию slice,
    которая возвращает элементы по указанным индексам