Почему Enumerable.All возвращает true для пустой последовательности? [Дубликат]
На этот вопрос уже есть ответ:
Почему IQueryable.All () возвращает true для пустой коллекции? 11 ответовvar strs = new Collection<string>();
bool b = strs.All(str => str == "ABC");
Код создает пустую коллекцию строк, а затем пытается определить, являются ли все элементы в коллекции "ABC". Если вы запустите его,b
будет правдой.
Но в коллекции даже нет элементов, не говоря уже о тех элементах, которые равны "ABC".
Это ошибка или есть разумное объяснение?