在foreach
循環(huán)中優(yōu)雅地處理異常,可以使用try-catch
語句。將可能拋出異常的代碼放在try
塊中,然后在catch
塊中處理異常。這樣,即使發(fā)生異常,循環(huán)也可以繼續(xù)執(zhí)行,而不會導致程序崩潰。
下面是一個C#示例,展示了如何在foreach
循環(huán)中優(yōu)雅地處理異常:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
foreach (int number in numbers)
{
try
{
// 可能拋出異常的代碼
int result = DivideByTwo(number);
Console.WriteLine($"{number} divided by 2 is {result}");
}
catch (DivideByZeroException ex)
{
// 處理異常
Console.WriteLine($"Error: {ex.Message}");
}
}
}
static int DivideByTwo(int number)
{
if (number == 0)
{
throw new DivideByZeroException("Cannot divide by zero");
}
return number / 2;
}
}
在這個示例中,我們在foreach
循環(huán)中遍歷一個整數列表,并嘗試將每個元素除以2。如果元素為0,DivideByTwo
方法將拋出一個DivideByZeroException
異常。我們使用try-catch
語句捕獲這個異常,并在catch
塊中輸出錯誤信息。這樣,即使發(fā)生異常,循環(huán)也可以繼續(xù)執(zhí)行。