MoonBit 语言导览 MoonBit

let 语句中的模式

let 语句中,= 左侧可以是一个模式,用于匹配右侧的值。如果模式无法匹配,程序将中止。

您可能会注意到一个部分匹配警告错误。这是因为数组可能包含与预期不同数量的元素,而 let 语句仅处理数组恰好包含三个元素的情况。这被称为部分匹配。部分匹配会使程序更加脆弱:模式匹配可能在其他情况下失败,从而导致程序中止。 默认情况下,部分匹配警告被配置为错误,以帮助防止潜在的运行时问题。

实际上,match 表达式比 let 语句更常被使用。

fn main {
  f([1, 2, 3])
  f([1, 2])
}

fn f(array : Array[Int]) -> Unit {
  let [a, b, c] = array // warning as error
  println("a:\{a}, b:\{b}, c:\{c}")
}