for (int j = 0; j < Employees.size(); j++) {
          Employee el = (Employee) Employees.elementAt(j);
            Employees.removeElementAt(j);
        }

如上循环:假如size()为10的话,那么当j=6的时候,这时就会退出循环。因为j=6的时候.size()就为5了。因为每循环一次,就是删除一个子项。因为Employees.size随着你的子项的移除而改变的。

 正确方法:


        for (int j = 0; j < Employees.size(); j++) {
          Employee el = (Employee) Employees.firstElement()//取第一项
            Employees.removeElementAt(j);
        }


本文转载:CSDN博客