问题很简单。如何获取foreach
循环中的最后一项?现在我知道我可以找到它开始索引并计算集合中的项目,但我想知道是否有更优雅的方式?
foreach (var item in Collection)
{
}
答案 0 :(得分:4)
foreach
var lastItem = Collection.Last();
{{1}}
Last(IEnumerable)方法会抛出异常 source不包含任何元素。而是在返回时返回默认值 源序列为空,使用MSDN-
Enumerable.Last<TSource> Method (IEnumerable<TSource>)
方法。
答案 1 :(得分:3)
只需使用Last
:
Collection.Last()
- 这将返回列表中的最后一项。
答案 2 :(得分:2)
我会用Collection.Last()来做,但你可以这样做:
foreach (var item in Collection.Reverse())
... item is last on the first iteration
但真正的问题是你为什么要这样做。