gpt4 book ai didi

java - 不必要的 'else' 语句

转载 作者:IT老高 更新时间:2023-10-28 20:44:44 24 4
gpt4 key购买 nike

如您所知,在 Eclipse 中,您可以打开“Unnecessary 'else' statement”检查,该检查将在 if-then-else 上触发并提前返回。而且,根据我的经验,使用这样的语句有两种最可能的情况:

1) 预检:

if (!validate(arg1)) {
return false;
}
doLotOfStuff();

2) 后期检查:

doLotOfStuff();
if (condition) {
return foo;
} else {
return bar;
}

在第二种情况下,如果触发器打开,Eclipse 会建议您将代码更改为:

doLotOfStuff();
if (condition) {
return foo;
}
return bar;

但是,我认为 returnelse 语句更易读,因为它就像业务逻辑的直接映射。所以我很好奇这种“不必要的'else'语句”代码约定是否普遍存在或者带有else语句的代码更可取?

最佳答案

一般来说,我希望代码结构遵循底层“业务”逻辑的结构。在这种情况下,我的方法将取决于 condition 代表什么。例如,如果是错误检查,通常不会被命中,但偶尔可能会使用,那么第二种形式的不对称性与逻辑的不对称性相匹配。

doLotOfStuff();
if (condition) {
return foo;
}
return bar;

但是,如果任何一种可能性都是合理的,并且只是它们之间的选择,我会允许代码的结构显示这种对称性。

doLotOfStuff();
if (condition) {
return foo;
} else {
return bar;
}

代码是供程序员阅读的,而不是编译器。

关于java - 不必要的 'else' 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2681883/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com