62,614
社区成员
发帖
与我相关
我的任务
分享
List<String>list=new ArrayList<String>();
List<String[]>rows = new ArrayList<String[]>();
String s = "008011;100025;1369491001;新绿色田地;2;0;20111027;29991231;70;70;0;;";
for(int i=0;i<1500000;i++){
list.add(s);
}
String regex = ";";
Pattern p = Pattern.compile(regex);
for(int i=0;i<list.size();i++){
String line = list.get(i);
rows.add(p.split(line));
System.out.println(i);
//每次到70多W行,就内存溢出.咋办??
}
System.out.println(rows.size());
List<String[]>rows = new ArrayList<String[]>();
String s = "008011;100025;1369491001;新绿色田地;2;0;20111027;29991231;70;70;0;;";
String regex = ";";
Pattern p = Pattern.compile(regex);
for(int i=0;i<2000000;i++){
rows.add(p.split(s));
System.out.println(i);
}
System.out.println(rows.size());
797611
797612
797613
797614
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.lang.String.substring(String.java:1939)
at java.lang.String.subSequence(String.java:1972)
at java.util.regex.Pattern.split(Pattern.java:1002)
at java.util.regex.Pattern.split(Pattern.java:1059)
at test.file.Test.main(Test.java:18)