清理 List最可靠的方法取决于谓词
我有 List
和 Predicate
根据condition
结果,我应该使用什么方法来清除data
?
选项 1:
var del = data.Where(i => 条件); data.RemoveAll(i => del.Contains(i));
选项 2:
var del = data.Where(i => 条件); for (int i = 0; i < del.Count; i++) 数据.删除(del[i]);
选项 3:
var del = data.Where(i => 条件); foreach(del 中的 var i) 数据.删除(i);
选项 4:
data = data.Where(i => !condition);
还有其他吗?
I have List<T> data
and Predicate<T> condition.
What way should I use to clear data
depending on condition
result?
Option 1:
var del = data.Where(i => condition); data.RemoveAll(i => del.Contains(i));
Option 2:
var del = data.Where(i => condition); for (int i = 0; i < del.Count; i++) data.Remove(del[i]);
Option 3:
var del = data.Where(i => condition); foreach (var i in del) data.Remove(i);
Option 4:
data = data.Where(i => !condition);
Any other?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
怎么样:
请注意,如果不调用
ToList()
,您的第四个选项将无法工作。How about:
Note that your fourth option won't work without a call to
ToList()
.