Ответ
val map = mutableMapOf("a" to 1)
val newMap = map.plus("b" to 2)
map.apply { put("c", 3) }
println(map) // {a=1, c=3}
println(newMap) // {a=1, b=2}
plus создаёт новую неизменяемую Map, не модифицируя исходную. apply работает с исходной MutableMap, добавляя элемент. Итог:
- исходная map содержит "a" и "c"
- newMap содержит "a" и "b"