[問題] 請教各位大大,為何迴圈會越跑越慢
各位大大,小弟我最近在寫一支程式
是針對一個 "物件陣列"做循序的條件比對,物件陣列數約莫24萬個
比對的參數有8種a, b, c, d,.....h
比對方式像是這樣,
先比較 物件[0].value >= a,如果是就要去做某個數值計算
再比較 物件[0].value <= b,如果是就去做另一個數值計算
最後每一組參數都會得到一個結果R,紀錄起來後,再運算下一組參數
所以我寫了一個迴圈像是以下這樣
for(int a=0.4 ; a<0.9 ; a+=0.1){
for(int b=0.4 ; b<0.9 ; b+=0.1 ){
........(好幾層迴圈)
for(int h=1.0 ; h<1.5 ; h+=0.1){
//計算完結果,寫入記事本
fileWriter.write(test(物件陣列, a, b, c,..., h)+"\r\n");
}
}
}
test函數,會把物件陣列循序的提出來,進行比對,然後把結果寫入記事本
最一開始做一次,大概要5~6秒的時間,但是越到後來,速度越慢,到了60幾秒做一次,
我每完成一個參數比對都有把全域變數=null掉,並呼叫gc(),僅留下那個物件陣列沒
釋放,因為要一直對他做比對,除此之外,跑這個大量回圈比對時。
我是另外呼叫一個SwingWorker,在背景中做算算,僅僅一個,沒用到多Thread,
我估狗過了,但幾乎都是在講多執行緒的問題,但我除了GUI的Thread,僅多一條而以,
請問有各位高手大大有什麼想法嗎...或是直接知道是怎麼回事...
另外我想問 StringBuilder的問題,到現在1.8還是依舊嗎?還是說有修正了?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.241.138.246
※ 文章網址: https://www.ptt.cc/bbs/java/M.1480337878.A.20D.html
※ 編輯: baconcsie (123.241.138.246), 11/28/2016 21:06:24
→
11/28 21:45, , 1F
11/28 21:45, 1F
→
11/28 21:45, , 2F
11/28 21:45, 2F
→
11/28 22:01, , 3F
11/28 22:01, 3F
→
11/28 22:02, , 4F
11/28 22:02, 4F
→
11/28 23:24, , 5F
11/28 23:24, 5F
→
11/29 00:53, , 6F
11/29 00:53, 6F
→
11/29 00:53, , 7F
11/29 00:53, 7F
→
11/29 00:53, , 8F
11/29 00:53, 8F
推
11/29 09:51, , 9F
11/29 09:51, 9F
→
11/29 09:52, , 10F
11/29 09:52, 10F
→
11/29 09:52, , 11F
11/29 09:52, 11F
→
11/29 10:08, , 12F
11/29 10:08, 12F
→
11/29 10:15, , 13F
11/29 10:15, 13F
→
11/29 10:16, , 14F
11/29 10:16, 14F
推
11/29 11:08, , 15F
11/29 11:08, 15F
→
11/29 11:08, , 16F
11/29 11:08, 16F
→
11/29 11:09, , 17F
11/29 11:09, 17F
→
11/29 11:10, , 18F
11/29 11:10, 18F
→
11/29 11:15, , 19F
11/29 11:15, 19F
→
11/29 11:17, , 20F
11/29 11:17, 20F
→
11/29 11:39, , 21F
11/29 11:39, 21F
→
11/29 12:47, , 22F
11/29 12:47, 22F
→
11/29 16:04, , 23F
11/29 16:04, 23F
→
11/29 16:04, , 24F
11/29 16:04, 24F
→
11/29 16:14, , 25F
11/29 16:14, 25F
推
11/29 17:31, , 26F
11/29 17:31, 26F
→
11/30 02:04, , 27F
11/30 02:04, 27F
推
11/30 11:46, , 28F
11/30 11:46, 28F
→
11/30 11:47, , 29F
11/30 11:47, 29F
→
11/30 17:16, , 30F
11/30 17:16, 30F
推
12/01 14:22, , 31F
12/01 14:22, 31F
→
12/01 14:23, , 32F
12/01 14:23, 32F
→
12/04 23:10, , 33F
12/04 23:10, 33F
推
01/13 08:06, , 34F
01/13 08:06, 34F
java 近期熱門文章
PTT數位生活區 即時熱門文章