本身我们认为List<T>是数组之外性能最好的集合类了,但是因为他被设计为使用数字检索的类,所以请尽量避免使用对象检索位置的方法,例如:
List<T>.IndexOf(T) : Int32;
List<T>.Remove(T) : Boolean;
以及其他标有IndexOf的方法。
为什么尽量少用这些方法呢?因为这些方法的内部实现实际上是来一个For循环,从头到尾比较一下,运气不好的话,你每次调用都会循环整个数组。
List<T>.IndexOf(T) : Int32;
List<T>.Remove(T) : Boolean;
以及其他标有IndexOf的方法。
为什么尽量少用这些方法呢?因为这些方法的内部实现实际上是来一个For循环,从头到尾比较一下,运气不好的话,你每次调用都会循环整个数组。