ハッシュマップを作成する次のプログラムがあります。
public class sample {
private HashMap<String, String> joindata = new HashMap<String, String>();
public void map()
throws IOException{
BufferedReader reader = new BufferedReader(new FileReader("/tmp/table2"));
String line;
String[] tokens;
while ((line = reader.readLine()) != null)
{
tokens = line.split(",");
if(tokens.length == 2)
joindata.put(tokens[0], tokens[1]);
}
}
}
32Mのファイル(/ tmp / table2)から読み取ると、このプログラムのヒープが300Mに達するため、この実装にはいくつかのバグがあるようです。
ヒープサイズを減らすために私が行うことができる最適化を誰かが提案できますか?300Mのヒープは明らかに間違った実装です。