首先先看下代码:
new放里面:【 Info Info=null;
for (MaintenanceStationInfo dmsAscInfo : DmsAscInfoList) {
Info=new Info();
Info.setCountry(dmsAscInfo.getCountry());
Info.setProvince(dmsAscInfo.getProvince());
InfoList.add(Info);}】
new放外面:【Info Info=new Info();
for (MaintenanceStationInfo dmsAscInfo : DmsAscInfoList) {
Info.setCountry(dmsAscInfo.getCountry());
Info.setProvince(dmsAscInfo.getProvince());
InfoList.add(Info);}】
每一个对象创建的时候都会有一个ID。List对象在执行add方法的时候是将对象的引用放入List中。上述代码中创建对象的语句如果放在外面,在将对象add到List中时,前后向List中add的对象都是同一个,所以放在外面的时候最后List中的对象是同一个对象。