遍历删除List中的元素有不少种方法,当运用不当的时候就会产生问题。下面主要看看如下几种遍历删除List中元素的形式:java
1.经过加强的for循环删除符合条件的多个元素this
2.经过加强的for循环删除符合条件的一个元素spa
3.经过普通的for删除删除符合条件的多个元素.net
4.经过Iterator进行遍历删除符合条件的多个元素对象
- public void listRemove() {
- List<Student> students = this.getStudents();
- for (Student stu : students) {
- if (stu.getId() == 2)
- students.remove(stu);
- }
- }
- public void listRemoveBreak() {
- List<Student> students = this.getStudents();
- for (Student stu : students) {
- if (stu.getId() == 2) {
- students.remove(stu);
- break;
- }
- }
- }
- public void listRemove2() {
- List<Student> students = this.getStudents();
- for (int i=0; i<students.size(); i++) {
- if (students.get(i).getId()%3 == 0) {
- Student student = students.get(i);
- students.remove(student);
- }
- }
- }
- public void iteratorRemove() {
- List<Student> students = this.getStudents();
- System.out.println(students);
- Iterator<Student> stuIter = students.iterator();
- while (stuIter.hasNext()) {
- Student student = stuIter.next();
- if (student.getId() % 2 == 0)
- stuIter.remove();
- }
- System.out.println(students);
- }