我的程序中声明Hashmap的一行触发错误。字符串列表的散列表给我OutOfMemoryError
public class SubjectTeacherPeriod{
private int id;
private Map<String, Integer> num_attribute_map;
private Map<String,List<String>> str_attribute_map;
private Period period;
private List<Period> periodList;
public SubjectTeacherPeriod(){
num_attribute_map = new HashMap<String, Integer>();
str_attribute_map = new HashMap<String,List<String>>(); //THIS LINE
}
....
负责:
[email protected]:~/dev/drools/timetabler$ java -server in.co.technovia.timetabler.TimeTableApp
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.util.HashMap.<init>(HashMap.java:226)
at in.co.technovia.timetabler.domain.SubjectTeacherPeriod.<init>(SubjectTeacherPeriod.java:38)
at in.co.technovia.timetabler.solution.TimeTableInitializer.createTimeTable(TimeTableInitializer.java:66)
at in.co.technovia.timetabler.TimeTableApp.main(TimeTableApp.java:37)
什么是错我的HashMap的?
更新:就像所有的答案猜测,创造了太多的变数不好的循环变量。这不是hashmap本身的问题。
是否可以复制? – 2012-02-25 12:35:51