gpt4 book ai didi

java - Netbeans 给我一条错误消息,但它按我想要的方式工作

转载 作者:行者123 更新时间:2023-12-03 20:40:01 25 4
gpt4 key购买 nike

我有一个子类,其中包含一个返回 float 的函数。我在 try catch 语句中调用该函数,如果 if 语句失败并且 else 捕获它我希望该函数通过返回这样的注释来“崩溃” return;

这是那个函数:

float calc(... some arguments ...) {
...

if (operator.equals("+")) number = num1+num2;
else if (operator.equals("-")) number = num1-num2;
else if (operator.equals("*")) number = num1*num2;
else if (operator.equals("/")) number = num1/num2;
else return; // Here Netbeans gives me an error saying "Missing return value"

return number;
}

现在尝试调用此函数,如果 else 被执行,我希望函数“崩溃”并转到 catch 语句并向用户提供错误消息。这完全按照我想要的方式工作,但为什么 Netbeans 给我一个错误?还有其他方法吗?

最佳答案

我认为您不希望它“崩溃”,但您需要指出某种错误。因为该方法没有返回 void,所以什么都不返回是编译器错误。

相反,抛出一个 IllegalArgumentException

else throw new IllegalArgumentException("Illegal operator: " + operator);

只需确保您实际上在最后返回了一个有效值:

return number;

关于java - Netbeans 给我一条错误消息,但它按我想要的方式工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18901450/

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