为了验证参数的有效性,C语言使用一堆IF Else条件来确定它是否有效。在JAVA中,它有异常处理工具来处理这个问题。这两种方法的用法是什么,这两种方法的优缺点是什么?谢谢!
致以问候!
发布于 2010-08-26 13:54:41
就我个人而言,我喜欢断言声明。
但在这种情况下,对于复杂的问题,我更喜欢Try-Catch,对于更简单的问题,我更喜欢if-else。
If-else(s)是不可读和不可维护的,因为有很多If-else(S),特别是对于复杂问题。这就是为什么try-catch来拯救你。假设给定的输入是正确的,让我们来处理它。当在某些行中给定的输入被证明是不正确的时,只需转到catch块并返回一些默认值。
有人争辩说,try-catch更慢。这是真的。但是有多慢? 0.1毫秒?1毫秒?为了可读性和可维护性,我将牺牲这些毫秒。
毕竟,在编程中,每个函数/过程都有前提条件。我们都知道前提条件是什么意思。最好的方法(我个人的观点)是断言所有参数都符合所有前提条件。这样,我们可以假设给定的输入总是正确的,因为另一个楼层的伴侣已经保证了这一点。
https://stackoverflow.com/questions/3572277
复制相似问题