主页

索引

模块索引

搜索页面

卫语句

卫语句就是把复杂的条件表达式拆分成多个条件表达式,减少嵌套。嵌套了好几层的 if - then-else 语句,转换为多个 if 语句,实现它的逻辑,这多条的 if 语句就是卫语句。
卫语句将某些关键条件优先判断,简化程序流程走向。卫语句往往用于对 if 条件嵌套代码的优化。

在《阿里巴巴 Java 开发手册》中强制规定:超过 3 层的 if-else 的逻辑判断代码可以使用卫语句、策略模式、状态模式等来实现,其中卫语句即代码逻辑先考虑失败、异常、中断、退出等直接返回的情况,以方法多个出口的方式,解决代码中判断分支嵌套的问题,这是逆向思维的体现。

举例

嵌套的话语句很繁琐,可读性差:

public void get(int t) {
    if (t == 1) {
        return;
    } else {
        if (t == 2) {
            return;
        } else {
            if (t == 3) {
                return;
            } else {
                set();
            }
        }
    }
}

使用卫语句:

public void get(int t) {

    if (t == 1) {
        return;
    }
    if (t == 2) {
        return;
    }
    if (t == 3) {
        return;
    }
    set();
}

参考

主页

索引

模块索引

搜索页面