flutter三種迴圈比較

2021-10-14 11:10:50 字數 1142 閱讀 5717

foreach

迴圈陣列中的每個元素會通過foreach進行一些改變,會改變原陣列

map迴圈陣列中的元素並進行一些改變後返回乙個新陣列

一般的for、foreach、map耗時比較

var list = list();

for (var i = 0; i < 1000000; i++)

int forstart = datetime.now().microsecondssinceepoch;

for (var i = 0; i < list.length; i++) {}

int forend = datetime.now().microsecondssinceepoch;

print('for = $');

int foreachstart = datetime.now().microsecondssinceepoch;

list.foreach((element) {});

int foreachend = datetime.now().microsecondssinceepoch;

print('foreach = $');

int mapstart = datetime.now().microsecondssinceepoch;

list.map((e) {});

int mapend = datetime.now().microsecondssinceepoch;

print('map = $');

第一次列印

i/flutter (17551): for = 11926

i/flutter (17551): foreach = 13340

i/flutter (17551): map = 32

第二次列印

i/flutter (17551): for = 11987

i/flutter (17551): foreach = 13067

i/flutter (17551): map = 29

第三次列印

i/flutter (17551): for = 11707

i/flutter (17551): foreach = 12299

i/flutter (17551): map = 27

三種迴圈的比較

switch case 語法 switch 表示式 變數 case 值1 語句1 break case 值2 語句2 break default 語句3 break 執行過程 當程式執行到switch 表示式 變數 先判斷括號裡的表示式,執行大括號裡的case 後面的值1 如果和值1匹配,就執行語句...

三種迴圈語句的比較

同乙個問題,往往既可以用while語句解決,也可以用do while或者for語句來解決,但在實際應用中,應根據具體情況來選用不同的迴圈語句。如果迴圈次數在執行迴圈體之前就已經確定,一般用for語句。如果迴圈次數是由迴圈體的執 況確定的,一般用while語句或者do while語句。當迴圈體至少執行...

三種迴圈的效能比較

下面是一段測試 listintegers new arraylist for int i 0 i 10000000 i long l1 system.currenttimemillis for int i 0 i integers.size i long l2 system.currenttimem...