我有一个要表达的声明,即在C伪代码中如下所示:
switch(foo):
case(1)
if(x > y) {
if (z == true)
doSomething()
}
else {
doSomethingElse()
}
return doSomethingElseEntirely()
case(2)
essentially more of the same
scala模式匹配语法是否可能是一种不错的方法?
最佳答案
如果要在单个match
语句中处理多个条件,则还可以使用允许您为案例指定其他条件的防护:
foo match {
case 1 if x > y && z => doSomething()
case 1 if x > y => doSomethingElse()
case 1 => doSomethingElseEntirely()
case 2 => ...
}
关于scala - Scala-复杂的条件模式匹配,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6804225/