我使用的语言是C#.
让
Listnumbers = new List ();
是一个整数列表,我们想用它们来做一些计算.访问列表的第一个元素是否更快?
numbers[0]
或者作为
numbers.First()
此外,如果我们想要访问列表的最后一个元素,则访问它的速度会更快
numbers[numbers.Count-1]
或者作为
numbers.Last()
Sergey Berez.. 19
IEnumerable
扩展检查源的类型,当你做First()
或Last()
.如果source是IList
则使用索引:
IListlist = source as IList ; if (list != null) { if (list.Count > 0) { return list[0]; } }
因此,不会创建枚举器,性能几乎相同.但简单的索引当然会更快.
IEnumerable<T>
扩展检查源的类型,当你做First()
或Last()
.如果source是IList<T>
则使用索引:
IList<TSource> list = source as IList<TSource>; if (list != null) { if (list.Count > 0) { return list[0]; } }
因此,不会创建枚举器,性能几乎相同.但简单的索引当然会更快.