每天一个秃头小技巧

【kotlin】MutableMap.getOrPut:处理“检

2025-04-13  本文已影响0人  littlefogcat

经常遇到以下情况:
检查Map 中的值是否存在,如果不存在则创建。最后返回值。如下:

// ...
val map = mutableMapOf<String, List<String>>()
var list = map.get(key)
if (list == null) {
  list = arrayListOf()
  map[key] = list
}
// ...

如上所示,需要从 map中取出key对应的 list 进行后续处理。如果不存在,则创建一个新的 list 实例并将其添加到 map 中。

Kotlin 标准库中的getOrPut方法实现了对这种情况的处理:

val list = map.getOrPut(key) { arrayListOf() }
上一篇 下一篇

猜你喜欢

热点阅读