gpt4 book ai didi

java - 显式转换返回

转载 作者:行者123 更新时间:2023-11-29 05:32:25 25 4
gpt4 key购买 nike

我正在维护由不再维护该产品的供应商编写的代码库(旧的 Java 3)。

我经常遇到这样的事情:

private boolean doSomething() {
boolean success = false;
// do stuff
if (/*some stuff*/) {
success = true;
}
return success;
}

public void doStuff() {
boolean ok = (boolean) doSomething();
if (ok) {
// do stuff
}
}

所以,很明显,他们试图通过传回一个指示状态(验证)的 boolean 值来确定方法成功/失败……我个人认为这是不好的做法,我宁愿向调用者抛出异常,但是这就是我。

我感到困惑的部分是,为什么这个供应商不断明确地将 boolean 返回值转换为 boolean 值?这是多余的,肯定会在运行时造成一些开销,不是吗?难道我一直做错了吗!? - 或者这只是我不应该注意的一些风格上的东西?

最佳答案

它不会在运行时产生开销,因为转换是为编译器准备的。但这是不必要的。你只需要

if (doSomething()) {
// do stuff
}

对于不太了解该语言并且没有阅读过其他人的代码来了解什么是好的风格的人来说,这是一种特殊的怪癖。

关于java - 显式转换返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20666379/

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