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