对象内部的Java数组

Unl*_*nda 1 java arrays object nullpointerexception

我试图访问作为对象一部分的数组.

我在Main.main(Main.java:24)的OrderedStringList.add(OrderedStringList.java:21)收到错误"线程中的异常"主"java.lang.NullPointerException"

我已经将我的程序削减到了骨头,切断了可能干扰输出的所有内容.

public class Main {

public static void main(String[] args) {

    int x = 5;

    OrderedStringList myList = new OrderedStringList();

    myList.add(x);
    }
} //end class
Run Code Online (Sandbox Code Playgroud)

此代码引用OrderedStringList类.

public class OrderedStringList {

public int values[];

OrderedStringList(){
    int values[] = new int[5];
}

public void add(int y) {
    values[0] = y;
    System.out.print(values[0]);
}
Run Code Online (Sandbox Code Playgroud)

我假设错误中的数字21和24是行号.因为我在原始代码中注释了一些内容,所以我发布的代码通常会在其中间包含一些内容.主线24是:myList.add(x);.OrderedStringList的第21行是:values[0] = y;.

我猜我有一些非常简单的事情.任何事情都表示赞赏.

谢谢.

jed*_*rds 5

这里

OrderedStringList(){
    int values[] = new int[5];
}
Run Code Online (Sandbox Code Playgroud)

你影响了班级成员values.

将其更改为:

OrderedStringList(){
    values = new int[5];
}
Run Code Online (Sandbox Code Playgroud)