java循环创建对象应该在循环体内还是循环体外
Posted Happy丶小鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java循环创建对象应该在循环体内还是循环体外相关的知识,希望对你有一定的参考价值。
第一种: for(int i = 0; i < 100; i++) { Object obj = new Object() } 第二种: Object obj = null for(int i = 0; i < 10000; i++) { obj = new Object() }
第一次:
Object obj = new Object();//写在100个循环内等于你有100个引用对应了100个对象
所以100个对象在一段时间内都是会占用内存,直到内存不足GC主动回收.
第二次:
obj = new Object();//写在100个循环内等于你使用1个引用分别100次调用了100个对象
所以当后一个对象init后,前一个对象已经是“无引用状态”,会很快的被GC自动回收.
结论:
第二种方法能更好的管理内存。
以上是关于java循环创建对象应该在循环体内还是循环体外的主要内容,如果未能解决你的问题,请参考以下文章