不恰當的使用for迴圈,會使速度慢千倍

2021-09-02 13:57:57 字數 1758 閱讀 7137

測試發現,不恰當的使用for迴圈語法,會使查詢效率慢千倍.謹記.

/**

* todo 測試發現.兩種不同的for寫法,list中46000條資料.效率差了1000多倍.

* * 2023年4月6日

* novelbio fans.fan

*/public void testarray()

long time3 = system.currenttimemillis();

system.out.println("process data=" + (time3 - time2));

long time4 = system.currenttimemillis();

//第二種for寫法

for (listlsdata : l***cel)

long time5 = system.currenttimemillis();

system.out.println("process2 data=" + (time5 - time4)); }

public void testarray2()

long time3 = system.currenttimemillis();

system.out.println("testarray2 process data=" + (time3 - time2));

long time4 = system.currenttimemillis();

//第二種for寫法

lscontent = null;

for (object lsdata : array)

long time5 = system.currenttimemillis();

system.out.println("testarray2 process2 data=" + (time5 - time4)); }

public void testarray3()

long time2 = system.currenttimemillis();

//第一種for寫法

for (int i = 1; i < l***cel.size(); i++)

long time3 = system.currenttimemillis();

system.out.println("testarray3 process data=" + (time3 - time2));

long time4 = system.currenttimemillis();

l***cel.remove(0);

//第二種for寫法.

for (integer a : l***cel)

long time5 = system.currenttimemillis();

system.out.println("testarray3 process2 data=" + (time5 - time4));

}

執行結果.

process data=7804

process2 data=5

testarray2 process data=4

testarray2 process2 data=3

testarray3 process data=3

testarray3 process2 data=1

如 所說對於用陣列實現的,建議用普通的for迴圈,從該例測試來看.實際差距也不大.

但如果是list巢狀型別的.用普通for迴圈會慢上千倍.

static的不恰當應用

最近總是和static鬧彆扭,看下面這個例子 取自我客戶的乙個例子 using system using system.threading namespace statictest public class database private static void close public stat...

不恰當的 import 會導致的問題

在 python 中,import 語句會被執行,也就是在匯入某個模組的的類 函式等時候,會執行該模組,此時如果該模組中有例項化的物件或者可以執行的函式,那麼就會執行。用乙個工作中遇到的問題來解釋 關於業務的描述可以忽略 在執行工裝測試套時,正確填寫好需要測試的工裝ipc的資訊後,發現實際執行的是預...

針對CRM的兩種不恰當論調

一直以來,市場上對crm都存在著兩種不恰當的論調。一種是悲觀論,也就是失敗論,說企業實施crm這個失敗率太高了,甚至還有人列舉數字說有70 的都不成功 另一種是天真論,盲目樂觀,說只要上了crm,客戶就會滿意了,銷售就會提高了,小公司也敢跨國集團了。力點說,這兩種論調都是不可取的,首先crm是一種工...