模式用來匹配值的結構

ch18-00-patterns.md
commit 1fedfc4b96c2017f64ecfcf41a0a07e2e815f24f

模式是 Rust 中特殊的語法,它用來匹配類型中的結構,無論類型是簡單還是複雜。結合使用模式和 match 表達式以及其他結構可以提供更多對程序控制流的支配權。模式由如下一些內容組合而成:

  • 字面值
  • 解構的數組、枚舉、結構體或者元組
  • 變數
  • 通配符
  • 占位符

這些部分描述了我們要處理的數據的形狀,接著可以用其匹配值來決定程序是否擁有正確的數據來運行特定部分的代碼。

我們透過將一些值與模式相比較來使用它。如果模式匹配這些值,我們對值部分進行相應處理。回憶一下第六章討論 match 表達式時像硬幣分類器那樣使用模式。如果數據符合這個形狀,就可以使用這些命名的片段。如果不符合,與該模式相關的代碼則不會運行。

本章是所有模式相關內容的參考。我們將涉及到使用模式的有效位置,refutableirrefutable 模式的區別,和你可能會見到的不同類型的模式語法。在最後,你將會看到如何使用模式創建強大而簡潔的代碼。