| 场景 | if 深层嵌套、主逻辑被边界条件推深 |
|---|---|
| 写法 | 异常/边界提前 return 或抛错 |
| 收益 | 主流程平铺、嵌套减少 |
Java 示例
Java 示例
// 之前
if (isSeparated) {
if (isRetired) result = 0; else result = amount;
} else {
if (isRetired) result = amount * 0.9; else result = amount * 0.8;
}
// 之后
if (isSeparated) return isRetired ? 0 : amount;
return isRetired ? deadAmount() : separatedAmount();返回多个值的语言用元组;放行路径统一在函数尾部时,卫语句与单一出口风格可以并存。