Switch Statement Syntax

DEX455 - Apex 控制流语句:条件判断、Switch 分支与循环完全指南

📄 第 114 页 🎬 视频课程

课程章节介绍

同学们好,我们来看一下 Apex 里的 switch 语句,它很像一个多路选择的开关。 switch 会先计算一个表达式的值,然后拿这个值去跟下面的 when 值做匹配。匹配上哪一个,就执行对应的代码块。如果所有 when 值都没匹配上,就会去执行 when else 代码块(相当于别的语言里的 default)。要是你压根没写 when else,那整个 switch 就什么都不做,安安静静地跳过。 特别要注意一个事儿:Apex 的 switch 没有“故障穿透”——也就是说,一个代码块执行完之后,会自动退出 switch,不需要你再去写 break 语句,这跟 Java 或 C 语言不一样。 那表达式可以是哪些类型呢?可以是 Integer、Long、字符串也就是 String、枚举类型 Enum,还可以是 sObject 类型。 when 值也可以很灵活:可以写单个值,也可以用逗号隔开写多个值,只要表达式等于其中任意一个就会匹配。如果你在 switch 上用的是 sObject 类型的表达式,when 值还可以直接写一个 sObject 类型的变量名,系统会按引用相等来判断是不是同一个对象。 好,这就是 switch 语句的基本规则,记清楚这几点,你在写多分支逻辑的时候就会非常顺手了。

关键词

Apex Salesforce Developer Guide