3. match 与穷尽性
match 按模式分派。编译器检查穷尽性:漏了分支会报错,并告诉你漏了哪个。
fn sign(x: Int) -> String =
match x {
0 -> "zero"
n if n > 0 -> "positive"
_ -> "negative"
}
pub fn main() -> Unit !io = {
println(sign(0))
println(sign(7))
println(sign(-2))
}
在 Playground 打开
zero
positive
negative