我想我犯的是一个非常基本的错误,但在玩了一个小时之后,我无法解决这个问题.我在一个方法中创建一个数组并尝试在main方法中调用它,但是当从main方法引用数组时,我一直得到一个空指针异常.我的班级是:
public class test {
public static String[][] Data;
public static void createArray() {
System.out.println("Test 2");
String[][] Data = new String[2][4];
Data[0][0] = "13CG43"; //CD ID
Data[0][1] = "POP"; //Type
Data[0][2] = "12.99"; //Price
Data[0][3] = "5"; //Stock
//Second row
Data[1][0] = "293DD3"; //CD ID
Data[1][1] = "HIP"; //Type
Data[1][2] = "14.99"; //Price
Data[1][3] = "2"; //Stock
}
public static void main(String[] args) {
try {
System.out.println("Test1");
createArray();
System.out.print("Test3 " + Data[0][0]);
} catch(Exception e) {
System.out.println("Error");
}
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢,
public static void createArray() {
System.out.println("Test 2");
Data = new String[2][4];
Data[0][0] = "13CG43"; //CD ID
Data[0][1] = "POP"; //Type
Data[0][2] = "12.99"; //Price
Data[0][3] = "5"; //Stock
//Second row
Data[1][0] = "293DD3"; //CD ID
Data[1][1] = "HIP"; //Type
Data[1][2] = "14.99"; //Price
Data[1][3] = "2"; //Stock
}
Run Code Online (Sandbox Code Playgroud)
您在方法中声明了一个新的局部变量,而不是修改全局变量.