gpt4 book ai didi

java - If-Else 语句 vs Exception-Catcher?

转载 作者:行者123 更新时间:2023-11-29 09:41:17 24 4
gpt4 key购买 nike

我厌倦了在我的代码中添加看似无穷无尽的 if-else 语句,所以我想知道如果我在出现问题时捕获异常是否会更好。例如。而不是说:

public static boolean firstStringOfArrayIsTheSameAsTheWord(String word, String[] array) {
if(word != null) {
if(array.length > 0) {
return word.equalsIgnoreCase(array[0]);
}
}
return false;
}

我只想:

public static boolean firstStringOfArrayIsTheSameAsTheWord(String word, String[] array) {
try {
return word.equals(array[0]);
} catch(/*NullPointerException or an ArrayIndexOutOfBoundsException*/ Exception e) {
return false;
}
}

请注意,我确实知道我可以在 if 语句中使用多个参数,但我只对哪种方法在实践中更好用以及原因感兴趣。

提前致谢!

最佳答案

不,那不是一个好主意,那是对异常处理的滥用。

你应该避免不必要的异常捕获,异常应该只用于出错的事情,因为它们在你的控制之外,而不是作为正常程序流程的一部分。此外,正如 @SJuan76 所说,您将隐藏存在真正异常的情况。

如果您厌倦了使用 if-else 语句,您可以尝试使用 switch (在 Java 7 中甚至会是 work for strings)或改进 polymorphism在您的应用程序中。

关于java - If-Else 语句 vs Exception-Catcher?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16599411/

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