LINQ: RemoveAll и удаление элементов

Какой самый простой способ удалить элементы, соответствующие какому-либо условию, из списка а затем получить эти предметы.

Я могу думать несколькими способами, я не знаю, какой из них лучше:

var subList = list.Where(x => x.Condition);
list.RemoveAll(x => x.Condition);

или

var subList = list.Where(x => x.Condition);
list.RemoveAll(x => subList.Contains(x));

Является ли какой-либо из этих способов одним из лучших? Если да, какой?Если нет, то как мне это сделать?

10
задан BrokenGlass 16 April 2012 в 17:20
поделиться