new对象放循环外面和循环里面的区别

首先先看下代码:

new放里面:【  Info Info=null;

       for (MainInfo cInfo : MainInfoList) { 

                       Info=new Info();
                       Info.setCountry(cInfo.getCountry());
                       Info.setProvince(cInfo.getProvince());

        InfoList.add(Info);}

new放外面:Info Info=new Info();

 

       for (MainInfo dmsAscInfo : cInfoList) { 
       Info.setCountry(cInfo.getCountry());
       Info.setProvince(cInfo.getProvince());

       InfoList.add(Info);}

 

每一个对象创建的时候都会有一个ID。List对象在执行add方法的时候是将对象的引用放入List中。上述代码中创建对象的语句如果放在外面,在将对象add到List中时,前后向List中add的对象都是同一个,所以放在外面的时候最后List中的对象是同一个对象。

 

 

posted @ 2017-11-15 10:59  三岁就帅了  阅读(706)  评论(0编辑  收藏  举报