看板
[ java ]
討論串[問題] hashmap 的效能 (300mb檔案)
共 7 篇文章
內容預覽:
原PO會記憶體不足或慢的原因,. 可能是因為對Java的String處理不夠了解所致。. 應該可以從以下兩點進行改善:. 1.儲存成key的多個欄位,不應串接起來。. 原因:A.變成更長的String耗記憶體. B.可能導致錯誤,如A,BC和AB,C都變為ABC. 解法:將原本String[]包覆成
(還有890個字)
內容預覽:
大概看了一下你的需求. 有點類似要將2個文字檔做join的意思. 實務上我們也常常做這樣的事情. 常常也是幾十、幾百mb的文字檔在結合. 一開始,我的想法跟你一樣:. 「用HashMap,用hash取值很快呀」. 事實證明,我錯了…. 小小的資料量和複雜的資料結構,也許Map很適合. 但如果是要做你
(還有501個字)
內容預覽:
假設有 a.txt 以及 b.txt 兩個檔案. a.txt b.txt. c1 c2 c3 c1 c2 c3 c4. 將a.txt 轉成 map. int first;. while((line = br.readLine()) != null) {. first = line.indexOf("
(還有315個字)
內容預覽:
試著用 char array, 記憶體是有省一點,. 一百萬筆亂生的測資來說, 原本的方法會吃 172 MB,. 改用 char array 剩 134 MB. 約省 1/4, 依原本 30/100 就快爆的情況來看可說沒有幫助. 附沒幫助的 code. import java.io.Buffere
(還有1130個字)