在我的应用程序中,_collection是一个列表,我需要从其中移除所有不符合条件的User对象。但是,以下代码在第二次迭代时会出现无效操作错误,因为_collection本身已经被改变:
foreach (User user in _collection)
{
if (!user.IsApproved())
{
_collection.Remove(user);
}
}
我可以创建另一个列表集合并来回复制它们,但这样就会出现非克隆引用类型等问题。
有没有一种比将 _collection 复制到另一个列表变量更简洁的方法?
_collection.FindAll(user => user.IsApproved());
来消除否定语。 - Ionuț G. Stan