любопытный случай пропущенного Ienumerable Foreach Extension
] недавнее обсуждение отсутствия C# функции Zip
вызвало связанный вопрос: почему C# не предоставляет foreach
метод расширения для широко используемого ienumerable
интерфейс? Интересно, только list
включает эту функциональность.
разворачивает загадку
]это упущение оптимизация производительности? Или есть более глубокая, основная причина? Несколько теорий пытаются объяснить этот заметный пробел.
] встроенный foreach
advance
одна перспектива предполагает, что встроенный C #'s foreach
оператор адекватно отвечает большинству потребностей итерации. Его краткий и читаемый синтаксис часто предпочтительнее:
foreach (Item item in list)
{
item.DoSomething();
}
это контрастирует с более словесным синтаксисом метода расширения:
list.ForEach(item => item.DoSomething());
]
аргументы для foreach
extension
, однако, другие утверждают практические преимущества метода foreach ()
расширения в конкретных ситуациях. Эти преимущества включают:
foreach
. foreach ()
вызовы - убедительное преимущество. сдвиг в перспективе
] Первоначально сомнительно, некоторые теперь распознают значение A foreach ()
метод расширения в определенных сценариях. Эта переоценка предполагает, что Microsoft может рассмотреть возможность добавления стандартизированного foreach
в будущих выпусках структуры.
отсутствие этого метода расширения для ienumerable
остается темой для обсуждения. Учитывая потенциальные преимущества, сообщество разработчиков ожидает дальнейших событий, надеясь увидеть этот пробел, рассматриваемый в библиотеке расширения C#.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3