我正在寻找一个更好的< em > < / em >模式用于处理每个需要处理的元素列表,然后根据结果从列表中删除。
你不能在foreach (var element in X)
中使用.Remove(element)
(因为它会导致Collection was modified; enumeration operation may not execute.
异常)…你也不能使用for (int i = 0; i < elements.Count(); i++)
和.RemoveAt(i)
,因为它破坏了你在集合中相对于i
的当前位置。
有没有一种优雅的方式来做到这一点?