Gar*_*aso 1 scala scala-collections
我必须根据特定条件更新地图中的键.值不会被修改.
我最终得到了这段代码,但看起来并不整齐,有没有更好的替代方法:
val newOpt = inOpt("type") match {
case "mydb" =>
inOpt map { case (key, value) => (
if (key.contains(XXXX)) {
key.replace("A", "B")
}
else if(...){..}
else {
key
}
, value)
}
}
Run Code Online (Sandbox Code Playgroud)
所有更新的密钥以及旧密钥和值都将在newOpt中.
问候
小智 5
试试这个
val m = Map(1->"hi",2->"Bye")
scala.collection.immutable.Map[Int,String] = Map(1 -> hi, 2 -> Bye)
Run Code Online (Sandbox Code Playgroud)
用5更新密钥2
m.map{x=> if(x._1 == 2) (5 -> x._2) else x}
scala.collection.immutable.Map[Int,String] = Map(1 -> hi, 5 -> Bye)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
803 次 |
| 最近记录: |