摘要:C# for 迴圈一個要注意的小地方
c# 的 for 迴圈有三個運算式:
for (initializer; condition; iterator)
body
其中 condition 是判斷是否停止的依據,
所以若 condition 中的變數是會變動的,
那麼跑幾圈就一定不是我們想的了。
例如:
for (int i=0; i < myDataTable.Rows.Count; i++)
{
myDataTable.Rows[i].Delete();
myDataTable.AcceptChanges();
}
這樣每跑一次 AcceptChanges() , myDataTable.Rows.Count 就會減少一,
那假設本來有10筆資料,可是迴圈卻只會跑5次!
所以注意 AcceptChanges(); 要寫在迴圈的外面才行,
要不就用一個變數存下 Rows.Count ,不要直接用。