Som*_*ame 1 collections dictionary scala
我有一个mutable.Map,如果密钥存在,我需要更改它的密钥。如果没有,我想添加一个新的映射。我的意思是:
val m = mutable.HashMap[String, String]()
val default = "default"
val key = "key_to_change"
val newKey = "key_to_set"
if(m.contains(key)) {
val oldValue = m(key)
m remove key
m += newKey -> oldValue
} else m += newKey -> default
Run Code Online (Sandbox Code Playgroud)
我想知道scala是否没有更简洁的方法来执行这种“密钥更改”。您能提出更好的解决方案吗?
remove “从此映射中删除一个键,返回之前与该键关联的值作为选项”,所以
val value = m.remove(key).getOrElse(default)
m += newKey -> value
Run Code Online (Sandbox Code Playgroud)