模式配對

您可以使用 match 關鍵字,將值與一或多個「模式」配對。系統會從最上方往下依序比對,並套用第一個比對成功的模式。

模式可以是簡單的值,類似 C 和 C++ 中的 switch

fn main() {
    let input = 'x';

    match input {
        'q'                   => println!("Quitting"),
        'a' | 's' | 'w' | 'd' => println!("Moving around"),
        '0'..='9'             => println!("Number input"),
        _                     => println!("Something else"),
    }
}

_ 模式是可與任何值配對的萬用字元模式。

重點:

  • 建議您特別指出某些特定字元在模式中的使用方式
    • | 可做為 or
    • .. 可以視需要展開
    • 1..=5 代表含頭尾的範圍
    • _ 是萬用字元
  • 示範綁定的運作方式可能會很有幫助,例如您可以將萬用字元取代為變數,或是移除 q 前後的引號。
  • 您可以在參照項目上示範如何配對。
  • 這時候可能很適合提到「不可反駁的模式」這個概念,因為這個詞可能會出現在錯誤消息中。