我非常喜欢Last()并且会一直使用它List<T>.但是因为它似乎被定义了IEnumerable<T>,我想它首先枚举枚举 - 这应该是O(n)而不是O(1)直接索引a的最后一个元素List<T>.
Last()
List<T>
IEnumerable<T>
标准(Linq)扩展方法是否意识到这一点?
C++中的STL通过迭代器和诸如此类的整个"继承树"来意识到这一点.
.net c# linq extension-methods
.net ×1
c# ×1
extension-methods ×1
linq ×1