我知道在功能样式中,所有if-else
块都被模式匹配替换。但是如何Map
在 Scala 中使用模式匹配来处理 s 呢?例如,如何以更实用的方式重写此代码?
val myMap= getMap()
if(myMap.contains(x) && myMap.contains(y)) Some(myMap(x) + myMap(y))
else if(myMap.contains(x + y)){
val z = myMap(x + y)
if (z % 2 == 0) Some(z)
else None
}
else None