java 中list中后面的对象覆盖前面的对象
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 中list中后面的对象覆盖前面的对象相关的知识,希望对你有一定的参考价值。
List<Student> list = new ArrayList<Student>();
for (int i = 0; i < 2; i++)
Student stu= new Student();
stu= manager.getById("0001");//从数据库中查询
stu.setCount(i);
list.add(stu);
for (Student stu : list)
System.out.println(stu.getCount());
打印:1,1。后面添加的一个对象覆盖前面一个对象
@Autowired
private StuManager stuManager;
public void getInfo()
List<Student> list = new ArrayList<Student>();
for (int i = 0; i < 2; i++)
Student stu= new Student();
stu= stuManager.getById("O001");
stu.setCount(i);
list.add(stu);
for (Student stu : list)
System.out.println(stu.getCount());
打印:0,1。后面添加的一个对象覆盖前面一个对象
出现第一次的情况可能是你把Student类的count属性设置成static了,这样你改变一次count,所有Student实例对象的count值都变成一样的了。 参考技术A 你的student 类也要贴出来看看 参考技术B 未指定数组长度的缘故吧..追问
代码贴出来了
来自:求助得到的回答 参考技术B 你用LinkedHashMap就能保证唯一,且有序了追问
我每个Student对象都是新建的,为什么list中后面的对象还会覆盖前面的对象呢?
追答stu= manager.getById("0001");
每次返回来的是同一个对象啊
你setCount(2)的时候就变了。
java数据放List前面数据被覆盖
List<Product> proList = pr.getList();
List<OnlineApplyProduct> rList=new ArrayList<OnlineApplyProduct>();
for (Product po : proList)
OnlineApplyProduct oap=new OnlineApplyProduct();
oap=productService.getVo(po);
rList.add(oap);
rList里的数据会被覆盖
以上是关于java 中list中后面的对象覆盖前面的对象的主要内容,如果未能解决你的问题,请参考以下文章
Object.assign 合并多个对象的属性,如果是对象有同名属性,则后面对象的属性值覆盖前面的。
Gson 中 JsonArray添加JsonObject覆盖前面了