for迴圈
for(int i=0;i<100;i++)
foreach迴圈
for(int i : integers)
//等同於
for(iterator i=list.iterator(
);i.hasnext();
)
效能上的區別:
對於linkedlist,是單鏈表,使用for迴圈每次都要從第乙個元素讀取next域來讀取,速度非常慢;例如:從a[0]開始讀元素、然後通過a[0]的next讀到a[1]元素、通過a[0]的next的next讀到a[2]元素。
對於arraylist,是順序表,使用for迴圈可以順序訪問,速度較快;例如:從a[0]開始直接讀到元素,接著直接讀a[1];(順序表的優點,隨機訪問)
綜述:使用arraylist時配合for迴圈使用,使用linkedlist時配合foreach使用會更好。
C 中for和foreach迴圈的效能
大家先來看看如下三個迴圈 int foo new int 100 1,foreach int i in foo console.writeline i.tostring 複製 2,for int index 0 index console.writeline foo index tostring 複...
for迴圈與foreach的區別
首先說一下foreach有的也叫增強for迴圈,foreach其實是for迴圈的乙個特殊簡化版。再說一下foreach的書寫格式 for 元素型別 元素名稱 遍歷陣列 集合 或者能進行迭代的 用for迴圈的話就會麻煩很多 複製 public static void main string args ...
for迴圈與foreach的區別
for迴圈與foreach的區別 foreach 依賴 ienumerable.第一次 var a in getlist 時 呼叫 getenumerator 返回第乙個物件 並 賦給a,以後每次再執行 var a in getlist 的時候 呼叫 movenext.直到迴圈結束.期間getlis...