- Elixir 指南
- Elixir - 首頁
- Elixir - 概述
- Elixir - 環境
- Elixir - 基本語法
- Elixir - 資料型別
- Elixir - 變數
- Elixir - 運算子
- Elixir - 模式匹配
- Elixir - 決策
- Elixir - 字串
- Elixir - 字元列表
- Elixir - 列表和元組
- Elixir - 關鍵詞列表
- Elixir - Map
- Elixir - 模組
- Elixir - 別名
- Elixir - 函式
- Elixir - 遞迴
- Elixir - 迴圈
- Elixir - 可列舉型別
- Elixir - 流
- Elixir - 結構體
- Elixir - 協議
- Elixir - 檔案 I/O
- Elixir - 程序
- Elixir - Sigil
- Elixir - 綜合
- Elixir - 型別規範
- Elixir - 行為
- Elixir - 錯誤處理
- Elixir - 宏
- Elixir - 庫
- Elixir 有用資源
- Elixir - 快速指南
- Elixir - 有用資源
- Elixir - 討論
Elixir - Case 語句
Case 語句可視為命令式語言中 switch 語句的替代品。Case 取一個變數/字面值,並應用模式匹配到不同的 case 中。如果任一 case 匹配,Elixir 會執行與該 case 關聯的程式碼並退出 Case 語句。如果沒有找到匹配項,它會退出該語句,並出現一個 CaseClauseError,顯示 未找到匹配子句。你應該始終使用一個匹配所有值的 case,即 _。這有助於防止上述錯誤。這與 switch-case 語句中的 default case 類似。
語法
if 語句的語法如下 −
case value do
matcher_1 -> #code to execute if value matches matcher_1
matcher_2 -> #code to execute if value matches matcher_2
matcher_3 -> #code to execute if value matches matcher_3
...
_ -> #code to execute if value does not match any of the above
end
示例
case 3 do
1 -> IO.puts("Hi, I'm one")
2 -> IO.puts("Hi, I'm two")
3 -> IO.puts("Hi, I'm three")
_ -> IO.puts("Oops, you dont match!")
end
上述程式生成以下結果。
Hi, I'm three
請注意,case 選擇是使用模式匹配完成的,所以你可以使用標準模式匹配技術。
elixir_decision_making.htm
廣告