public void corrector() { compile(); int max = Math.min(grabbedImageData.size(), grabbedImagePositions.size()); GrabbedImageData gid = null; GrabbedImagePosition gip = null; for (int i = 0; i < max; i++) { for (GrabbedImageData g : grabbedImageData) { if (g != null && g.getSerialnumber() == i) { gid = g; break; } } for (GrabbedImagePosition g : grabbedImagePositions) { if (g != null && g.getSerialnumber() == i) { gip = g; } } if (gid == null || gip == null) { System.out.printf("Error : i = %d, gid = %s, gip = %s", i, gid, gip); } else if (gid.getRownumber() != gip.getRownumber()) { grabbedImagePositions.remove(gip); resetGipSerial(); } } }