<分区>
Possible Duplicate:
Getting odd/even part of a sequence with LINQ
How can I get every nth item from a List<T>?
我正在使用 HtmlAgilityPack 和 C# 来解析一些 HTML。
<div id="post-8266">
<div class="ruler"> </div>
<div id="post-8266">
<div class="ruler"> </div>
<div id="post-8266">
<div class="ruler"> </div>
<div id="post-8266">
<div class="ruler"> </div>
基本上,我有这些元素,每个元素都在它们自己的对象中,在 IEnumerable 中。
有没有一种优雅的方法来获取集合中的每个 N/2 元素。意思是,跳过每个带有 .ruler
类的 div?
我需要遍历结果集,所以我要么将每个找到的对象复制到一个新的 IEnumerable 中,要么只在 foreach 函数中内联使用它。
例如:
//Copying resulting set to new IEnumerable<T>:
var odds = elements.SelectOdds();
//Using it inline for my usage:
foreach (var x in elements.SelectOdds())
{
}
哪些选项最好,我怎样才能优雅地实现这一目标?