在C#中,可以使用try-catch語句來處理異常情況。try塊中包含可能會引發異常的代碼,而catch塊中包含處理異常的代碼。如果try塊中的代碼引發了異常,則程序會立即跳轉到catch塊中,并執行其中的代碼。
以下是一個示例代碼,演示了如何使用try-catch語句處理異常情況:
try
{
// 可能引發異常的代碼
int a = 10;
int b = 0;
int result = a / b; // 除以0會引發異常
}
catch (DivideByZeroException ex)
{
// 異常處理代碼
Console.WriteLine("除數不能為0");
}
在上面的示例中,當試圖將一個數除以0時會引發DivideByZeroException異常。try塊中的代碼會引發這個異常,然后程序會跳轉到catch塊中,并執行其中的代碼。在catch塊中,會打印出一個錯誤消息,告訴用戶除數不能為0。
除了catch塊,還可以使用finally塊來執行一些清理工作。finally塊中的代碼無論是否引發了異常都會執行,通常用來釋放資源或執行一些清理操作。
try
{
// 可能引發異常的代碼
int[] numbers = new int[5];
Console.WriteLine(numbers[10]); //引發IndexOutOfRangeException異常
}
catch (IndexOutOfRangeException ex)
{
// 異常處理代碼
Console.WriteLine("數組下標越界");
}
finally
{
// 清理工作
Console.WriteLine("執行清理工作");
}
在上面的示例中,try塊中的代碼會引發IndexOutOfRangeException異常,然后程序會跳轉到catch塊中執行異常處理代碼。最后,無論是否引發異常,finally塊中的代碼都會執行,執行清理工作。