我有List< T>数据和谓词< T>条件.
我应该根据条件结果使用什么方法来清除数据?
>选项1:
var del = data.Where(i => condition);
data.RemoveAll(i => del.Contains(i));
>选项2:
var del = data.Where(i => condition);
for (int i = 0; i < del.Count; i++)
data.Remove(del[i]);
>选项3:
var del = data.Where(i => condition);
foreach (var i in del)
data.Remove(i);
>选项4:
data = data.Where(i => !condition);
>还有其他吗?
解决方法:
怎么样:
data.RemoveAll(condition);
请注意,如果没有调用ToList(),您的第四个选项将无法工作.