Функция mapOf
Функция mapOf создает объект типа Map,
который представляет собой неизменяемый ассоциативный массив
(словарь). В качестве параметров принимает пары ключ-значение,
где ключ и значение могут быть любого типа. Возвращает
ассоциативный массив, который нельзя изменять после создания.
Импорт
import kotlin.collections.mapOf
Синтаксис
fun <K, V> mapOf(): Map<K, V>
fun <K, V> mapOf(vararg pairs: Pair<K, V>): Map<K, V>
fun <K, V> mapOf(pair: Pair<K, V>): Map<K, V>
Пример
Создадим пустой ассоциативный массив:
val emptyMap: Map<String, Int> = mapOf()
println(emptyMap)
Результат выполнения кода:
{}
Пример
Создадим ассоциативный массив с одной парой ключ-значение:
val singleMap: Map<String, Int> = mapOf("age" to 25)
println(singleMap)
Результат выполнения кода:
{age=25}
Пример
Создадим ассоциативный массив с несколькими парами ключ-значение:
val userData: Map<String, Any> = mapOf(
"name" to "John",
"age" to 30,
"isActive" to true
)
println(userData)
Результат выполнения кода:
{name=John, age=30, isActive=true}
Пример
Создадим ассоциативный массив с числовыми ключами:
val numberMap: Map<Int, String> = mapOf(
1 to "one",
2 to "two",
3 to "three"
)
println(numberMap)
Результат выполнения кода:
{1=one, 2=two, 3=three}
Пример
Получим значение по ключу из ассоциативного массива:
val colors: Map<String, String> = mapOf(
"red" to "#FF0000",
"green" to "#00FF00",
"blue" to "#0000FF"
)
val redCode: String? = colors["red"]
println(redCode)
val blackCode: String? = colors["black"]
println(blackCode)
Результат выполнения кода:
#FF0000
null
Пример
Попробуем изменить созданный ассоциативный массив:
val immutableMap: Map<String, Int> = mapOf("a" to 1, "b" to 2)
// immutableMap["c"] = 3 // Ошибка компиляции
// immutableMap.remove("a") // Ошибка компиляции
println(immutableMap)
Результат выполнения кода:
{a=1, b=2}
Смотрите также
-
функцию
mutableMapOf,
которая создает изменяемый ассоциативный массив -
функцию
emptyMap,
которая создает пустой неизменяемый ассоциативный массив -
функцию
hashMapOf,
которая создает изменяемый ассоциативный массив на основе хэш-таблицы -
функцию
linkedMapOf,
которая создает изменяемый ассоциативный массив с сохранением порядка элементов