为了账号安全,请及时绑定邮箱和手机立即绑定

大佬!请问在Java中在循环里动态像list集合中添加数据出错?具体问题在下面!

大佬!请问在Java中在循环里动态像list集合中添加数据出错?具体问题在下面!

互换的青春 2021-05-19 18:11:18
CaseResVideoEntity caser=new CaseResVideoEntity();List<CaseResVideoEntity> lists = new ArrayList<>();for(int i=0;i<3;i++){caser.setCaseId("xx"+i); lists.add(caser);for(CaseResVideoEntity e:lists){System.out.println(e.getCaseId());}}这段代码是在for循环中动态的修改实体类中的参数,并把修改参数后的实体类添加到list集合中,正确的逻辑结果,list里应该是 xx0 xx1 xx2,可是却出错了:xx0xx1xx1xx2xx2xx2。这是在循环内打印的结果,如果在循环外打印list结果就是xx2xx2xx2。将实体类放到循环中就正常了,我想知道是为什么
查看完整描述

2 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

CaseResVideoEntity caser=new CaseResVideoEntity();你在外面new出来的话,他的引用一直不变,所以数据永远不变

查看完整回答
反对 回复 2021-05-23
  • 2 回答
  • 0 关注
  • 205 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信