除以0时C#中的无穷大或异常?

System.DivideByZeroException除以零是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。