【发布时间】:2010-08-26 05:35:05
【问题描述】:
为了验证一个参数的有效性,C语言使用一堆IF Else条件来判断它是否有效。在 JAVA 中,它有 Exception 工具来处理这个问题。这两种方法有什么用,这两种方法的优缺点是什么?谢谢!
问候!
【问题讨论】:
为了验证一个参数的有效性,C语言使用一堆IF Else条件来判断它是否有效。在 JAVA 中,它有 Exception 工具来处理这个问题。这两种方法有什么用,这两种方法的优缺点是什么?谢谢!
问候!
【问题讨论】:
就个人而言,我喜欢断言声明。
但在这种情况下,我更喜欢 Try-Catch 处理复杂问题,而 if-else 处理更简单的问题。
If-else(s) 在有很多的地方不可读和不可维护,尤其是对于复杂的问题。这就是为什么 try-catch 来救援的原因。假设给定的输入是正确的,让我们处理它。当在某些行中给定的输入被证明不正确时,只需转到 catch 块并返回一些默认值。
有人认为 try-catch 比较慢。嗯,这是真的。但是慢了多少? 0.1 毫秒? 1 毫秒?为了可读性和可维护性,我会牺牲这些毫秒。
毕竟,在编程中,每个函数/过程都有先决条件。我们都知道前置条件是什么意思。最好的方法(我个人的看法)是断言所有参数都符合所有先决条件。这样我们就可以假设给定的输入总是正确的,因为另一层的伙伴已经保证了这一点。
【讨论】: