When Else Block

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

📄 第 116 页 🎬 视频课程

课程章节介绍

好,我们来看看Switch语句里的when else块。你可以把它理解成一个“兜底”的选项,就像告诉程序:如果前面列出的所有情况都不匹配,就执行这里的代码。 Salesforce特别建议你在处理枚举类型的时候,一定要加上when else。为什么呢?因为枚举的值可能会变。比如,你可能引用了托管包里定义的枚举,如果将来这个包升级了,里面新增了几个枚举值,而你的Switch里没有对应这些新值的when分支,代码就不知道该怎么办了,可能会抛出异常,结果就不符合预期了。 而如果你提前准备了一个when else块,就能把所有这些意外的新值都接住,让程序继续安全地运行下去,至少不会因为没处理到而崩溃。 还有一点要注意:如果你要写when else块,它必须是Switch语句里的最后一块,不能写在前面的when之间,就像打扫战场的最后一步一样。 这就是when else块的作用,简单说就是“其他所有情况”的保险。

关键词

Apex Salesforce Developer Guide