gpt4 book ai didi

Java 在 try block 内抛出异常

转载 作者:行者123 更新时间:2023-12-02 08:34:16 24 4
gpt4 key购买 nike

我有一个如下所示的代码:

try {
if (resp.equals("a")) {
success(resp);
} else if (resp.equals("b")) {
throw new Exception("b error");
} else if (resp.equals("c")) {
throw new Exception("c error");
}

} catch (Exception e) {
dosomething(e.getMessage());
}

我的 catch 语句没有捕获错误...当我抛出 try block 之外的异常时,我是否做错了什么?

最佳答案

您的 if-else block 都不会被执行,因为您在所有这些 block 中都使用 == 来比较字符串。在这种情况下,try block 根本不会抛出任何异常

使用equals方法来比较所有情况下的字符串:

if (resp.equals("a"))

或者:

if ("a".equals(resp))   // Some prefer this, but I don't

第二种方法将避免NPE,但通常我会避免使用这种方法,因为我不知道潜在的异常,并且以后可能会陷入陷阱。

关于Java 在 try block 内抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14860601/

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