我有一個可變映射,我想要一個默認值為 0 的鍵未找到
我嘗試了下面的代碼withDefault({somevalue})但仍然回傳null
val attributes = mutableMapOf<String, Int>().withDefault({0})
attributes["orange"]=345
println(attributes["orange"])
println(attributes["orang"])
我得到的結果345 null是345 0
我在這里想念什么?
uj5u.com熱心網友回復:
withDefault將與getValue一起使用,而不是與get一起使用。[...]:
val attributes = mutableMapOf<String, Int>().withDefault { 0 }
val result = attributes["orang"]
println(result) // Output: null
val result2 = attributes.getValue("orang")
println(result2) // Output: 0
請參閱:withDefault
當原始映射不包含指定鍵的值并且使用 Map.getValue 函式獲得值時,使用此隱式默認值[...]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/487952.html
上一篇:如何從字串陣列創建物件映射?
