写法一:
Iterator<QcSampleDTO> it = qclist.iterator();
//排除尾箱容器
while (it.hasNext()) {
if(it.next().getContainerId().equals(tailDTO.getContainerId())
&& it.next().getLotId().equals(tailDTO.getLotId())) {
it.remove();
}
}
出现了两次 it.next() ,如果list集合长度为2,就不会第二次进入遍历。
写法二:
QcSampleDTO tailDTO = tailList.get(0);
Iterator<QcSampleDTO> it = qclist.iterator();
//排除尾箱容器
while (it.hasNext()) {
QcSampleDTO sampleDTO = it.next();
if (sampleDTO.getContainerId().equals(tailDTO.getContainerId())
&& sampleDTO.getLotId().equals(tailDTO.getLotId())) {
it.remove();
}
}
写法一是个坑,it.next()使用一次,下标加一,写法二正确。
版权声明:本文为justdoit_potato原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。