当前位置: 代码迷 >> Java相关 >> 为什么会出现 java heap space异常
  详细解决方案

为什么会出现 java heap space异常

热度:519   发布时间:2009-10-28 08:59:46.0
为什么会出现 java heap space异常
import java.io.*;
import java.util.*;
public class T2{
    public static void main(String[] args)throws Exception{
    BufferedReader b1=new BufferedReader(new FileReader("./T2.java"));
    List<String> lk=new LinkedList<String>();        
        String     str=b1.readLine();
    while(str!=null){
    lk.add(str);
    b1.readLine();
    }
    ListIterator<String> lit=lk.listIterator(lk.size());
    while(lit.hasPrevious()){
    System.out.println("|-"+lit.previous());
    }
    }
}
搜索更多相关的解决方案: space  java  heap  

----------------解决方案--------------------------------------------------------
这个错就是内存不够,你应该写了死循环。
----------------解决方案--------------------------------------------------------
我没时间帮你运行程序,如果是正常程序,你可以把eclipse内存加大,在文件eclipse.ini里修改
----------------解决方案--------------------------------------------------------
    while(str!=null){
    lk.add(str);
    b1.readLine();
    }

就是这个str!=null的原因。
----------------解决方案--------------------------------------------------------
import java.io.*;
import java.util.*;
public class T2{
    public static void main(String[] args)throws Exception{
    BufferedReader b1=new BufferedReader(new FileReader("./T2.java"));
    List<String> lk=new LinkedList<String>();         
        String     str=b1.readLine();
    while(str!=null){
    lk.add(str);
    str=b1.readLine(); //问题在这句
    }
    ListIterator<String> lit=lk.listIterator(lk.size());
    while(lit.hasPrevious()){
    System.out.println("|-"+lit.previous());
    }
    }
}  

----------------解决方案--------------------------------------------------------
  相关解决方案