修改报销单逻辑有点看不懂
for(ClaimVoucherItem old : olds){ boolean isHave =false; for(ClaimVoucherItem item:items){ if(item.getId()==old.getId()){ isHave=true; break; }
这句中,items这个集合还没有写入,也就是他的claim_voucher_item中的id还没有被生成,这句中为何可以比较item.getId()和old.getId()??
可不可以换个逻辑,把老的item全部删除,新的重新加入,这样是不是简单一点
42
收起
正在回答
1回答
同学你好!
items是指页面修改之后传递过来的报销单条目,如果不是新增的就是有id的(修改时有将报销单条目的id传递过去)。如果是新增的条目就没有id。如果没有id,只是id为null与old.getId()不相等,是可以比较的
把旧的删除,重新添加也是可以。
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
4. SSM到Spring Boot入门与综合实战
- 参与学习 人
- 提交作业 323 份
- 解答问题 8263 个
本阶段将带你学习主流框架SSM,以及SpringBoot ,打通成为Java工程师的最后一公里!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星