- 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
广告