C# for循环 循环中先求长度还是使用list.Count,哪个效率高

这种问法可能问的不好。应该说成是第一种方法完全没有必要,很多人可能以为那样会为代码带来效率,而实际上是不会给效率带来任何提升。 
因为事实上,索引器内部,为了安全期间,还是会去求整个list的count的。将两者代码贴出来可能会更好的理解这一点: 

public T this[int index] 
{ 
get 
{ 
if (index >= this._size) 
{ 
ThrowHelper.ThrowArgumentOutOfRangeException(); 
} 
return this._items[index]; 
} 
set 
{ 
if (index >= this._size) 
{ 
ThrowHelper.ThrowArgumentOutOfRangeException(); 
} 
this._items[index] = value; 
this._version++; 
} 
} 

public int Count 
{ 
get 
{ 
return this._size; 
} 
}

posted @ 2016-03-05 09:01  会飞灬的鱼  阅读(2122)  评论(0)    收藏  举报