НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
482 of 1310 menu

Функция putIfAbsent

Функция putIfAbsent добавляет пару ключ-значение в словарь только в том случае, если указанный ключ отсутствует в словаре. Если ключ уже существует, функция возвращает текущее значение, связанное с ключом, и не изменяет словарь. Если ключ отсутствует, функция добавляет новую пару и возвращает null.

Синтаксис

fun putIfAbsent(key: K, value: V): V?

Пример

Добавим элемент в словарь, если ключ отсутствует:

val map = mutableMapOf("a" to 1, "b" to 2) val res = map.putIfAbsent("c", 3) println(map) println(res)

Результат выполнения кода:

{a=1, b=2, c=3} null

Пример

Попробуем добавить элемент с существующим ключом:

val map = mutableMapOf("a" to 1, "b" to 2) val res = map.putIfAbsent("a", 10) println(map) println(res)

Результат выполнения кода:

{a=1, b=2} 1

Пример

Использование putIfAbsent с числовыми ключами:

val map = mutableMapOf(1 to "one", 2 to "two") val res1 = map.putIfAbsent(3, "three") val res2 = map.putIfAbsent(1, "first") println(map) println("Result 1: $res1") println("Result 2: $res2")

Результат выполнения кода:

{1=one, 2=two, 3=three} Result 1: null Result 2: one

Пример

Работа с null значениями:

val map = mutableMapOf("a" to null, "b" to "value") val res1 = map.putIfAbsent("a", "new value") val res2 = map.putIfAbsent("c", "another value") println(map) println("Result 1: $res1") println("Result 2: $res2")

Результат выполнения кода:

{a=null, b=value, c=another value} Result 1: null Result 2: null

Смотрите также

  • функцию getOrPut,
    которая получает значение или добавляет новое
  • функцию getOrDefault,
    которая получает значение или возвращает значение по умолчанию
  • функцию getOrElse,
    которая получает значение или вычисляет его через лямбду
  • функцию put,
    которая добавляет или заменяет элемент в словаре
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить