当前位置: 代码迷 >> Ruby/Rails >> java.lang.OutOfMemoryError,帮帮我,谢谢
  详细解决方案

java.lang.OutOfMemoryError,帮帮我,谢谢

热度:435   发布时间:2016-04-29 02:25:00.0
java.lang.OutOfMemoryError,帮帮小弟我,多谢
java.lang.OutOfMemoryError,帮帮我,谢谢
我写的这段代码为什么会报这样的错,是哪里错了呀

public ? String ? customerSPValue(String[] ? temp) ? {
StringBuffer ? str_temp ? = ? new ? StringBuffer();

? ? ? ? for ? (int ? i ? = ? 1; ? i ? < ? temp.length; ? i++) ? {
? ? ? ? ? ? ? if ? (i> 1){
? ? ? ? ? ? ? ? ? ? ? ? i=i-1;
? ? ? ? ? ? ? ? ? ? ? ? str_temp.append( "custUpdate.setCustomerString( "+i+ ", ? cust.get "+temp[i]+ "());\n ");
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }
}
return ? str_temp.toString();
}

------解决方案--------------------------------------------------------
for 循环陷入死循环,导致字符串变得非常大以至于虚拟机的内存不够用了。
------解决方案--------------------------------------------------------
每做一次循环 i++一次, i=i-1一次,等于没作用,死循环就把内存耗尽了

------解决方案--------------------------------------------------------
死循环
------解决方案--------------------------------------------------------
如上
------解决方案--------------------------------------------------------
死循环,去掉i=i-1;
在i=i-1;处设个断点就知道i的变化情况了。

参考地址:http://www.verydemo.com/demo_c89_i95848.html

  相关解决方案