iterator空指针异常问题,求大佬解答

public class Test01 {
    public static void main(String[] args) {

        ArrayList<Student> arrList = new ArrayList<>();
        Student student = new Student("张三", 34, 91.2);
        Student student2 = new Student("张四", 20, 92.3);
        Student student3 = new Student("张五", 20, 93.4);
        Student student4 = new Student("张六", 34, 91.2);
        arrList.add(student);
        arrList.add(student2);
        arrList.add(student3);
        arrList.add(student4);
        System.out.println(arrList);

        Iterator<Student> iterator = arrList.iterator();
        while (iterator.hasNext()) {
            Student s =  iterator.next();
            System.out.println(s);
        }
    }
}


public class Student implements Comparator<Student> {
    private String name;
    private int age;
    private double scroe;

    public Student() {
    }

    public Student(String name, int age, double scroe) {
        this.name = name;
        this.age = age;
        this.scroe = scroe;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public double getScroe() {
        return scroe;
    }

    public void setScroe(double scroe) {
        this.scroe = scroe;
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", scroe=" + scroe +
                '}';
    }

    @Override
    public int compare(Student o1, Student o2) {
        if (o1.scroe == o2.scroe){
            return o1.age - o2.age;
        }else return Double.compare(o1.scroe, o2.scroe);
    }
}

[Student{name='张三', age=34, scroe=91.2}, Student{name='张四', age=20, scroe=92.3}, Student{name='张五', age=20, scroe=93.4}, Student{name='张六', age=34, scroe=91.2}]
Exception in thread "main" java.lang.NullPointerException
    at lyj.homework.Test01.main(Test01.java:31)

检查一下循环是不是正常遍历到最后了

Iterator<Student> iterator = arrList.iterator();
for (Student s: iterator){
    System.out.println(s);
}

这样去迭代。

 你的代码是没有问题的,可能你迭代器导错了包。import java.util.Iterator;
如果需要我可以远程给你看下是什么问题导致的。私信我就行。

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632