java 对象创建在循环里和循环外的区别
User jobs = new User();
for (int i=0; i<10; i++){
jobs.setName("董小姐"+i);
jobs.setAge(i);
userServiec.saveUser(jobs);
}
放外边是同一块内存空间,对象的内容是最后一次修改的内容,所以最终User都是一样的
User jobs;
for (int i=0; i<10; i++){
jobs = new User();
jobs.setName("董小姐"+i);
jobs.setAge(i);
userServiec.saveUser(jobs);
}
放在里面的时候,每次都开辟了一个新的内存空间,也就是新的对象,所以每个User都是一个个独立的内存空间,内容自然不一样。