- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我厌倦了在我的代码中添加看似无穷无尽的 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/
我正在尝试创建一个使用文本字段从用户那里获取输入的应用程序。将字符串拆分为空格并查找字符串中的坏词。如果发现错误词,则在 DOM 上输出结果。 我一直在寻找表格,但找不到。我找到了一些 PHP 的,但
我进行了搜索,但找不到像这样的正则表达式。这个正则表达式必须捕获每个 url,如“http://domain.com/blabla”、“domain.com/blabla”、“domain.com”、
我厌倦了在我的代码中添加看似无穷无尽的 if-else 语句,所以我想知道如果我在出现问题时捕获异常是否会更好。例如。而不是说: public static boolean firstStringOf
我目前正在用 javascript 开发一个应用程序,我想使用 cordova 或 phonegap 来使我的代码适应 android、Iphone 等。但是在我的应用程序中,我用这个函数保存了我的文
我正在尝试进行 catch Action 以接住一些下落的球。球和捕手是 Sprites(为了使用 pygame.sprite.groupcollide)。然而,捕手站着不动,不服从任何命令。我没有得
我需要在 boxMesh 上转换阴影,而网格本身应该不可见。 我找到了 technique Three.js GitHub 问题跟踪器似乎在几年前就可以工作,但现在不再工作了 - 它涉及创建一个新的着
我是一名优秀的程序员,十分优秀!