Интерфейс MutableMap
Интерфейс MutableMap представляет собой изменяемую коллекцию
пар ключ-значение, где каждый ключ уникален в пределах карты.
Наследует от интерфейса Map и добавляет методы для
модификации содержимого: добавления, изменения и удаления элементов.
В первый параметр методов обычно передается ключ элемента,
во второй параметр - значение элемента, а в третий параметр
может передаваться функция для вычисления значения.
Импорт
import kotlin.collections.MutableMap
Синтаксис
interface MutableMap<K, V> : Map<K, V>
Пример
Создадим изменяемую карту и добавим в нее элементы:
val map: MutableMap<String, Int> = mutableMapOf()
map.put("one", 1)
map.put("two", 2)
map.put("three", 3)
println(map)
Результат выполнения кода:
{one=1, two=2, three=3}
Пример
Изменим значение по существующему ключу:
val map: MutableMap<String, Int> = mutableMapOf("a" to 1, "b" to 2)
map.put("b", 20)
println(map)
Результат выполнения кода:
{a=1, b=20}
Пример
Удалим элемент по ключу:
val map: MutableMap<Char, String> = mutableMapOf('x' to "first", 'y' to "second")
map.remove('x')
println(map)
Результат выполнения кода:
{y=second}
Пример
Добавим элемент только если ключ отсутствует:
val map: MutableMap<String, Double> = mutableMapOf("temp" to 36.6)
map.putIfAbsent("temp", 37.0)
map.putIfAbsent("pressure", 1.0)
println(map)
Результат выполнения кода:
{temp=36.6, pressure=1.0}
Пример
Используем оператор [] для доступа к элементам:
val map: MutableMap<Int, String> = mutableMapOf(1 to "alpha", 2 to "beta")
map[3] = "gamma"
println(map[2])
println(map)
Результат выполнения кода:
beta
{1=alpha, 2=beta, 3=gamma}
Пример
Очистим карту полностью:
val map: MutableMap<String, Boolean> = mutableMapOf("a" to true, "b" to false)
map.clear()
println(map.isEmpty())
Результат выполнения кода:
true
Смотрите также
-
интерфейс
Map,
который представляет неизменяемую карту -
интерфейс
HashMap,
который реализует MutableMap на основе хэш-таблицы -
интерфейс
LinkedHashMap,
который сохраняет порядок добавления элементов -
интерфейс
TreeMap,
который хранит элементы в отсортированном порядке