C# 提供多種迴圈語句,用於重複執行程式碼區塊,直到條件不再滿足為止。
for 迴圈
for 迴圈是最常用的迴圈結構之一,通常用於已知迭代次數的情況。
基本語法
組成部分
- 初始化:在迴圈開始前執行一次,通常用於初始化迴圈計數器
- 條件:在每次迴圈迭代前評估,決定是否繼續執行迴圈
- 迭代:在每次迴圈體執行後執行,通常用於更新迴圈計數器
範例
多重迭代變數
無限迴圈
foreach 迴圈
foreach 迴圈用於遍歷集合中的每個元素,如陣列、清單或其他可列舉的集合。
基本語法
範例
注意事項
- 無法在 foreach 迴圈中修改集合的元素(如果是引用類型,可以修改其屬性)
- 無法在 foreach 迴圈中添加或移除集合中的元素
while 迴圈
while 迴圈在條件為真時重複執行程式碼區塊。
基本語法
範例
無限迴圈
do-while 迴圈
do-while 迴圈與 while 迴圈類似,但它會先執行迴圈體,然後再評估條件。這確保迴圈體至少執行一次。
基本語法
範例
LINQ 迴圈替代方法
雖然不是傳統的迴圈語句,但 LINQ 提供了多種方法來遍歷和處理集合,這些方法通常比傳統迴圈更簡潔。
迴圈控制語句
break 語句
用於中斷迴圈的執行並跳出迴圈。
continue 語句
用於跳過當前迭代的剩餘部分,並繼續下一次迭代。
goto 語句
雖然不推薦使用,但 C# 支持 goto 語句來跳轉到程式碼中的標籤。
嵌套迴圈
可以在一個迴圈內嵌套另一個迴圈。
迴圈性能考量
- 迴圈的執行效率排序通常為:for > while > foreach
- 對於大型集合,考慮使用並行迴圈(Parallel.For, Parallel.ForEach)
- 在可能的情況下,考慮使用 LINQ 方法代替傳統迴圈以提高代碼可讀性