> >修改列表在迭代時通常會導致“收集已修改;枚舉操作可能不會執行”錯誤。發生這種情況是因為刪除項目使迭代器無效。 這是安全刪除元素的方法:
方法1:反向迭代> 向後迭代會在刪除項目時防止索引問題。 此方法適用於簡單的刪除標準。
for (int i = safePendingList.Count - 1; i >= 0; i--) { // Check removal condition if (shouldRemove) { safePendingList.RemoveAt(i); } }
方法RemoveAll
>
對於更複雜的刪除邏輯,
RemoveAll
摘要:
safePendingList.RemoveAll(item => item.Value == someValue);
這些方法允許在迭代過程中安全有效地從列表中刪除元素,從而消除了運行時例外的風險。選擇最適合您的刪除標準和編碼樣式的方法。 >
以上是如何在迭代期間安全地從通用列表中刪除項目?的詳細內容。更多資訊請關注PHP中文網其他相關文章!