C#在List遍歷的時候刪除項
阿新 • • 發佈:2020-04-20
/// <summary> /// 當你在遍歷的過程中刪除某個物件的時候,這時被刪除的物件之後的所有物件都會往前移動一位。 /// 如果想正確的遍歷整個list就需要讓i從0開始重新遍歷。 /// 我這裡的i=-1是因為當我們進行下一次迴圈的時候i++,所有剛好下次迴圈的時候是用0開始。 /// 缺點:因為每次刪除物件都嘚從新遍歷,所有增加了程式碼執行的時間。 /// </summary> private void Test() { for(int i=lists.Count-1;i>=0;i--) {if(lists[i]==1) { lists.Remove(lists[i]); break; } } }