这似乎是一个愚蠢的问题,但我还没有找到答案,所以就在这里。 :)
在这两种情况下,如果您未能检查集合的边界,您将得到一个“超出范围”的异常。这只是编码风格偏好吗?
如果有人需要示例:
List<byte> myList = new List<byte>(){0x01, 0x02, 0x03};
byte testByte = myList.ElementAt(2);
对比
byte testByte = myList[2];
最佳答案
因为Enumerable
更通用,用enumerable表示的集合可能没有索引器。
但是,如果确实如此 - 不要使用 ElementAt()
它可能不会那么高效。
关于c# - 为什么我要使用 Enumerable.ElementAt() 而不是 [] 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5326874/