我正在考虑为我的自定义集合(一棵树)实现 IEnumerable,这样我就可以使用 foreach 来遍历我的树。但是据我所知,foreach 总是从集合的第一个元素开始。我想选择 foreach 从哪个元素开始。是否有可能以某种方式更改 foreach 开始的元素?
最佳答案
是的。执行以下操作:
Collection<string> myCollection = new Collection<string>;
foreach (string curString in myCollection.Skip(3))
//Dostuff
Skip
是一个 IEnumerable 函数,它可以跳过您指定的从当前索引开始的次数。另一方面,如果您想只使用前三个,您可以使用.Take
:
foreach (string curString in myCollection.Take(3))
这些甚至可以配对在一起,所以如果您只想要 4-6 件元素,您可以这样做:
foreach (string curString in myCollection.Skip(3).Take(3))
关于c# - 是否可以从第一个元素以外的元素开始迭代使用 foreach?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6429728/