1:
/* 用户DATABEAN */
UserBean bean = new UserBean();
String userName = null;
Bigdecimal userId = new BigDecimal(0);
for (int i = 0; i < 1000; i++) {
  userName = bean.getUserName();
  userId = bean.getUserId();
}
2:
/* 用户DATABEAN */
UserBean bean = new UserBean();
for (int i = 0; i < 1000; i++) {
  String userName = bean.getUserName();
  Bigdecimal userId = bean.getUserId();
}1和2的两种方式哪一种更节省内存的开销 
为什么。?
对于userName,userId 来说在for循环的内外都一样吧。。?
在循环内没有NEW这个对象就可以吧?

解决方案 »

  1.   

    Bigdecimal userId = new BigDecimal(0); 
    这里没有必要new,因为new完就成为垃圾了。
      

  2.   

    也就是说Bigdecimal userId = new BigDecimal(0); 
    直接就写成Bigdecimal userId; 这样呗 
    声明一个对象就完了呗
    那1和2的两种方式哪一种更节省内存的开销 
    为什么。?
      

  3.   

    如果要是基本类型:
    比如int j = 0;
    是在循环内还是在循环外节省内存开销呢??