调用方法之前boolean方法vs boolean?

时间:2015-10-27 08:13:57

标签: java methods boolean action conditional-statements

所以我想检查一下,例如我的ev3机器人是否已连接,然后才开始行动。

什么是更好的方式,这个

if (ev3Connected)
    doStuff();

private void doStuff() {
    //stuff
}

还是这个?

doStuff();

private void doStuff() {
    if (ev3Connected) {
        //stuff 
    }
}

或者只是零差异?

1 个答案:

答案 0 :(得分:0)

一般来说,我会选择第一个选项。

if (ev3Connected)
    doStuff();

private void doStuff() {
    //stuff
}

我这样做是因为更高级别的方法应该总是更容易阅读。或者你可以将doStuff()重命名为doS​​tuffIfEvoConnected(),但你可以尝试if语句更清楚。

这样做的好处是,调试代码的人会知道,即使没有输入方法,在单步执行代码时也没有执行doStuff()。

如果永远不要输入doStuff(),除非ev3Connected是绝对必要的,那么你应该从方法内部抛出异常,同时仍然使用if检查父代码。我可以想象,如果例如ev4Connected,doStuff可以工作。

相关问题