Java 使用if-else语句进行除法

Java 使用if-else语句进行除法,java,exception-handling,divide-by-zero,Java,Exception Handling,Divide By Zero,我有一个小问题,DivisionByZeroException如果我们可以处理if-else块,它有什么用。我试着用谷歌搜索,但找不到正确的答案。有人能详细地告诉我吗?提前感谢忘记DivisionByZeroException,使用if-else逻辑几乎可以避免所有异常 异常的全部意义在于从一些意外场景中恢复,并简化此恢复。如果代码中有10个地方可能发生异常,则必须确保包含所有If-else条件。异常处理简化了这一点。你不必在每一个可能的地方都进行验证,只要尝试一下就可以了,如果你在同一个地方遇

我有一个小问题,
DivisionByZeroException
如果我们可以处理if-else块,它有什么用。我试着用谷歌搜索,但找不到正确的答案。有人能详细地告诉我吗?提前感谢

忘记DivisionByZeroException,使用if-else逻辑几乎可以避免所有异常

异常的全部意义在于从一些意外场景中恢复,并简化此恢复。如果代码中有10个地方可能发生异常,则必须确保包含所有If-else条件。异常处理简化了这一点。你不必在每一个可能的地方都进行验证,只要尝试一下就可以了,如果你在同一个地方遇到了一些异常,就可以抓住它们

这还提供了为不同异常提供不同恢复机制的简单方法

if(check for first type of exception)
{
   do first task
}
else
{
   return one type of error
}
do some intermediary task
if(check for first type of exception && check for second type of exception)
{
   do second task
}
else
{
   if(exception is of one type)
       return one type of error
   if(exception is of second type)
       return another type of error
}
如果您使用下面的一些try-catch块,上面的代码可能会更清楚

try{
   do first task
   do some intermediary task
   do second task
}
catch(first type of exception)
{
   return one type of error
}
catch(second type of exception)
{
   return second type of error
}
catch(another type of exception developer may have forgotten)
{
   return a generic error
}

与其他人一样,一旦您获得了一些关于异常处理的良好知识,第二种方法显然会更加清晰。在第二种方法中,代码流更为明显。

忘记DivisionByZeroException,使用if-else逻辑几乎可以避免所有异常

异常的全部意义在于从一些意外场景中恢复,并简化此恢复。如果代码中有10个地方可能发生异常,则必须确保包含所有If-else条件。异常处理简化了这一点。你不必在每一个可能的地方都进行验证,只要尝试一下就可以了,如果你在同一个地方遇到了一些异常,就可以抓住它们

这还提供了为不同异常提供不同恢复机制的简单方法

if(check for first type of exception)
{
   do first task
}
else
{
   return one type of error
}
do some intermediary task
if(check for first type of exception && check for second type of exception)
{
   do second task
}
else
{
   if(exception is of one type)
       return one type of error
   if(exception is of second type)
       return another type of error
}
如果您使用下面的一些try-catch块,上面的代码可能会更清楚

try{
   do first task
   do some intermediary task
   do second task
}
catch(first type of exception)
{
   return one type of error
}
catch(second type of exception)
{
   return second type of error
}
catch(another type of exception developer may have forgotten)
{
   return a generic error
}

与其他人一样,一旦您获得了一些关于异常处理的良好知识,第二种方法显然会更加清晰。在第二种方法中,代码流更容易理解。

不是标准问题,有人会真正阅读问题吗?在java中,你应该使用if/else来捕捉被零除的数字并处理它。不是标准问题,有人会真正阅读问题吗?在java中,你应该使用if/else来捕捉被零除的数字并处理它是的,佛陀说的还有另外一件事。。假设您正在使用一些第三方api(JXL/JNA等)。。如果为参数传递错误的值,您不知道会发生什么。。被调用的函数可能会说“抛出someException”(顺便说一句,糟糕的编程实践)。。。在这种情况下,你不知道会出现什么异常。。如果您不知道可能会出现什么异常,如何使用If-else来防止它???。。使用异常,您可以以一种通用的方式捕获它,并将其作为“JXlexException/JNAException..”处理。。。说得好。除了佛陀说的话之外,你并不总是知道该做什么。。假设您正在使用一些第三方api(JXL/JNA等)。。如果为参数传递错误的值,您不知道会发生什么。。被调用的函数可能会说“抛出someException”(顺便说一句,糟糕的编程实践)。。。在这种情况下,你不知道会出现什么异常。。如果您不知道可能会出现什么异常,如何使用If-else来防止它???。。使用异常,您可以以一种通用的方式捕获它,并将其作为“JXlexException/JNAException..”处理。。。说得好。你并不总是知道除了什么。