C# 中的除以 0 会导致无穷大还是异常?


除以零是 System.DivideByZeroException,这是一个处理将被除数除以零产生的错误的类。

让我们看一个例子。

示例

 实时演示

using System;
namespace ErrorHandlingApplication {
   class DivNumbers {
      int result;

      DivNumbers() {
         result = 0;
      }

      public void division(int num1, int num2) {
         try {
            result = num1 / num2;
         } catch (DivideByZeroException e) {
            Console.WriteLine("Exception caught: {0}", e);
         } finally {
            Console.WriteLine("Result: {0}", result);
         }
      }

      static void Main(string[] args) {
         DivNumbers d = new DivNumbers();
         d.division(25, 0);
         Console.ReadKey();
      }
   }
}

输出

Exception caught: System.DivideByZeroException: Attempted to divide by zero.
at ErrorHandlingApplication.DivNumbers.division (System.Int32 num1, System.Int32 num2) [0x00000] in <a9b37148b4814c1a849bf4ee94fbe889> :0
Result: 0

此处输入的值为 num1/ num2。

result = num1 / num2;

在上面,如果 num2 设置为 0,那么因为我们已处理异常,因此将捕获 DivideByZeroException。

更新于:2020 年 6 月 22 日

1K+ 浏览

开启你的职业生涯

完成课程,获得认证

开始
广告