一个for循环的问题

 for (int i = 0; i < l_goods.size(); i++) {

 String goods_local_id = (new StringBuffer()).append(mission_local_id).append("_").append(l_goods.size()).append("/").append(i + 1).toString();
l_goods.get(i).setLocal_id(goods_local_id);
        }
        goodsdao.BatInsertGoods(l_goods);

代码大概如上所示,重点关注

append(l_goods.size()).append("/").append(i + 1),

这里"/"后应该是从1开始,到goods.size,例如20/1-20/20

但是在数据库中有些时候会出现从0开始的情况,如图所示

第一处红线是正确的情况,第二处红线是错误的情况。

大部分都是从1开始编号,但出现了从0开始编号的情况。

求助大神这是怎么回事

 

补充:重点是/号后应该是从1开始编号,却会偶尔出现从0开始的情况

不用关注append的其它参数,重点在append(i+1)

append(l_goods.size()).append("/"+ (i + 1))能这么写?

你没贴完整的代码,不好辨认.个人觉得你外面应该还有一层循环吧!这应该是从新的一个循环开始,你截图中的00144都变成了00145啊

代码贴的少看不出来,不行就加个非零判断

for循环从1开始,然后 i <= l_goods.size() ,把 i+1 换成 i,效果一样的嘛