for(int i = 0;iif(slist.get(i).getName().equals("张三")){slist.remove(i);break;}else{slist.add(new Student("张三",1234,21,"java01"));break;}这里的问题,如果你的张三放在其他位置,按照list遍历下来,就会第一个不是就会执行else里面的内容,也就是说又添加了一个张三进去了。