Функция get
Функция get используется для получения элемента коллекции
по указанному индексу или ключу. Применяется к массивам Array,
спискам List, множествам Set и словарям Map.
Для массивов, списков и множеств в параметр передается индекс элемента,
для словарей - ключ. Если элемент не найден, выбрасывается исключение
IndexOutOfBoundsException для коллекций или NoSuchElementException
для словарей.
Синтаксис
kotlin// Для Array, List, Set
operator fun get(index: Int): T
kotlin// Для Map
operator fun get(key: K): V?
kotlin// Альтернативный синтаксис с квадратными скобками
collection[index]
map[key]
Пример
Получим элемент массива по индексу 2:
kotlinval arr = arrayOf('a', 'b', 'c', 'd', 'e')
val res = arr.get(2)
println(res)
Результат выполнения кода:
kotlinChar 'c'
Пример
Получим элемент списка по индексу 1
используя синтаксис с квадратными скобками:
kotlinval list = listOf(1, 2, 3, 4, 5)
val res = list[1]
println(res)
Результат выполнения кода:
kotlinInt 2
Пример
Получим элемент словаря по ключу "second":
kotlinval map = mapOf("first" to 1, "second" to 2, "third" to 3)
val res = map.get("second")
println(res)
Результат выполнения кода:
kotlinInt? 2
Пример
Получим элемент множества по индексу 0:
kotlinval set = setOf('a', 'b', 'c', 'd', 'e')
val res = set.elementAt(0)
println(res)
Результат выполнения кода:
kotlinChar 'a'
Пример
Попытка получить элемент по несуществующему индексу
вызывает исключение IndexOutOfBoundsException:
kotlinval arr = arrayOf(1, 2, 3)
try {
val res = arr.get(5)
println(res)
} catch (e: IndexOutOfBoundsException) {
println("Error: ${e.message}")
}
Результат выполнения кода:
kotlinError: Index 5 out of bounds for length 3
Для каких типов коллекций работает
Функция get работает для следующих типов коллекций:
Array- массивыList- списки (включаяMutableList)Map- словари (включаяMutableMap)Set- множества (черезelementAt)String- строки (получение символа по индексу)
Смотрите также
-
функцию
getOrNull,
которая возвращаетnullесли элемент не найден -
функцию
getOrElse,
которая возвращает значение по умолчанию если элемент не найден -
функцию
elementAt,
которая используется для получения элемента по индексу в множествах -
функцию
getValue,
которая используется для безопасного получения значений из словарей