我有全局数组。当我想以某种方法保存某些内容,然后从该数组中显示该内容时,将显示错误NullPointerException。数组是对象类型。代码是这样的

class Something {
   public CoordinatesObject[] coordinates;

   Something() {
      coordinates = new CoordinatesObject[4];
   }

   public String myMethod() {
      if (coordinates.length==0){
      coordinates[0] = new CoordinatesObject(0,0);
      }
   }
   return Integer.toString(coordinates[0].getX());
}


怎么了?

抱歉,我已更新代码。我在构造函数中创建了一个新数组

最佳答案

您使用此行创建了一个数组:

coordinates = new CoordinatesObject[4];


然后尝试像这样创建CoordinatesObject:

if (coordinates.length==0){
     coordinates[0] = new CoordinatesObject(0,0);
}


但ordinates.length将等于4,这意味着将不会创建CoordinatesObject类的对象。

08-27 17:58