Это самый простой способ удалить элементы, соответствующие определенному условию из списка, а затем получить эти элементы.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));
Является ли какой-либо из этого один из лучших способов? Если да, то какой? Если это не так, как мне это сделать?
Это на самом деле O (N^3), но я предполагаю, что отсутствие материализации просто поскользнулся ваш mind;) – Blindy
Удалены ли элементы (как я их написал) из сублиста со второй инструкцией? : O – Diego
Er, который вы никогда не удаляете из 'sublist', и не собираетесь, если я его правильно прочитаю. – Blindy