我在 Java 中的数组有问题。我在类中使用数组作为类字段,因为我没有实例化类,所以它们都是静态的。我这样称呼一个数组(顺便说一句,这是一个对象数组,“客户”是它自己的类):
public static Customer[] cDatabase = new Customer[MAX_DATABASE];
其中 MAX_DATABASE 是一个常量,表示最大条目数。但是当我输入时会发生什么:
className.cDatabase[0].firstName = "John";
(为了简单起见避免使用方法)该值已调整,但数组中每个其他单元格中的每个 firstName 字段也会更改。我确信这与我调用数组的方式有关,但是当我这样做时:
for(int i = 0; i<className.MAX_DATABASE; i++){
className.cDatabase[i] = new Customer();
}
像这样声明字段后:
public static Customer[] cDatabase;
但后来我得到空指针异常。使该数组正常工作以使元素不指向数组的相同索引的最佳方法是什么?我敢肯定,正确的答案也可以避免 NPE ...