Функция last
Функция last
возвращает последний элемент коллекции.
Для массивов и списков функция возвращает элемент с наибольшим индексом.
Для множеств функция возвращает произвольный элемент, так как Set не гарантирует порядок элементов.
Для ассоциативных массивов функция возвращает последнюю пару ключ-значение.
Импорт
import kotlin.collections.last
Синтаксис
// Для Iterable (List, Set)
fun <T> Iterable<T>.last(): T
// Для Array
fun <T> Array<out T>.last(): T
// Для Map
fun <K, V> Map<out K, V>.last(): Map.Entry<K, V>
// С предикатом
fun <T> Iterable<T>.last(predicate: (T) -> Boolean): T
Пример
Получим последний элемент списка типа List
:
val list = listOf(1, 2, 3, 4, 5)
val res = list.last()
println(res)
Результат выполнения кода:
Int 5
Пример
Получим последний элемент массива типа Array
:
val array = arrayOf('a', 'b', 'c', 'd', 'e')
val res = array.last()
println(res)
Результат выполнения кода:
Char e
Пример
Получим последний элемент множества типа Set
:
val set = setOf(10, 20, 30, 40, 50)
val res = set.last()
println(res)
Результат выполнения кода:
Int 50
Пример
Получим последнюю пару ключ-значение ассоциативного массива типа Map
:
val map = mapOf("a" to 1, "b" to 2, "c" to 3)
val res = map.last()
println(res)
Результат выполнения кода:
c=3
Пример
Используем функцию last
с предикатом для поиска последнего четного числа:
val numbers = listOf(1, 2, 3, 4, 5, 6, 7, 8)
val res = numbers.last { it % 2 == 0 }
println(res)
Результат выполнения кода:
Int 8
Исключения
Функция last
выбрасывает исключение NoSuchElementException
, если коллекция пустая.
Для безопасного получения последнего элемента используйте lastOrNull
.
val emptyList = emptyList<Int>()
try {
val res = emptyList.last()
} catch (e: NoSuchElementException) {
println("Collection is empty")
}
Результат выполнения кода:
Collection is empty
Для каких коллекций работает
Функция last
работает для следующих типов коллекций:
Array
- массивыList
- спискиSet
- множестваMap
- ассоциативные массивыIterable
- любые итерируемые коллекцииSequence
- последовательности
Смотрите также
-
функцию
first
,
которая возвращает первый элемент коллекции -
функцию
lastOrNull
,
которая безопасно возвращает последний элемент илиnull
-
функцию
elementAt
,
которая возвращает элемент по указанному индексу -
функцию
find
,
которая ищет элемент по предикату