有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

处理如何解决线程“动画线程”java中的异常。lang.NullPointerException?

在解决我之前的错误后,下面是此代码的另一个NPE:

public void displayCircles() {
    for (Circle menu : circles) {
        if (menu.getX() < defaultCircles[pulseCircle].getX() + 0.5 && 
            menu.getX() > defaultCircles[pulseCircle].getX() - 0.5 && 
            menu.getY() < defaultCircles[pulseCircle].getY() + 0.5 && 
            menu.getY() > defaultCircles[pulseCircle].getY() - 0.5) 
            {
                choiceCircle = menu;
                pulsingEffect(menu);
            }

上述代码的第三行给了我NPE。有什么想法吗

defaultCircles:

Circle[] defaultCircles = new Circle[circles.length];

void polygon(int n, float cx, float cy, float r) {
    float angle = 210.0f / n;
    for (int i = 0; i < n; i++) {
        circles[i] = new Circle(i + 1, cx + r * cos(radians(angle * i)), cy + r * sin(radians(angle * i)));
        defaultCircles[i] = new Circle(i + 1, cx + r * cos(radians(angle * i)), cy + r * sin(radians(angle * i)));
    }
}

脉冲圈:

void findPulseCircle() {
    float max = circles[0].getY();
    for (int i = 0; i < circles.length; i++) {
        if (circles[i].getY() > max) {
            max = circles[i].getY();
            pulseCircle = i;
        }
    }
}

共 (0) 个答案