在Ruby中我可以这样写:
case n
when 0...5 then "less than five"
when 5...10 then "less than ten"
else "a lot"
end
Run Code Online (Sandbox Code Playgroud)
我如何在Scala中执行此操作?
编辑:我最好比使用它更优雅if.
我的函数的目的是在整数上加5,只要该整数大于0且小于或等于7.我尝试:
val add5Partial : PartialFunction[Int, Int] = {
case d if (0 < d <= 7) => d + 5;
}
Run Code Online (Sandbox Code Playgroud)
我明白了:
<console>:8: error: type mismatch;
found : Int(7)
required: Boolean
case d if (0 < d <= 7) => d + 5;
Run Code Online (Sandbox Code Playgroud)
有小费吗?