Java Android数组创建引发错误,尝试写入空数组

Java Android数组创建引发错误,尝试写入空数组,java,android,arrays,Java,Android,Arrays,我有一个简单的android应用程序,当用户点击它时,它会在屏幕上设置一些正方形的动画,我有一个正方形类和一个正方形对象数组,但是当我试图定义数组中的对象时,它告诉我它不能写入空数组。代码如下: Square Class: public class Square { int x = 0; int y = 0; int width = 0; int height = 0; boolean isAvailable = true; Rect zShape = new Rect(); long xIn

我有一个简单的android应用程序,当用户点击它时,它会在屏幕上设置一些正方形的动画,我有一个正方形类和一个正方形对象数组,但是当我试图定义数组中的对象时,它告诉我它不能写入空数组。代码如下:

Square Class:

public class Square {
int x = 0;
int y = 0;
int width = 0;
int height = 0;
boolean isAvailable = true;
Rect zShape = new Rect();
long xInterval = 0;
long yInterval = 0;

public Square (){

}
}
画布类:

public class MyCanvasView extends View {

Square[] squares;

public MyCanvasView(Context context){
    super(context);
    for(int i = 0; i < 100; i++){
        squares[i] = new Square();
        squares[i].setIntervals();
    }
}
}

画布是在主活动中创建的,我打算在创建画布时创建正方形。我不确定是什么错误导致了我的空数组,但如果有人能帮助我,我将不胜感激。

在画布类中,您需要定义正方形数组

public MyCanvasView(Context context){
  squares = new Squares[100];
  super(context);
  for(int i = 0; i < 100; i++){
    squares[i] = new Square();
    squares[i].setIntervals();
  }
}

您需要实例化该数组

public class MyCanvasView extends View {

Square[] squares = new Square[];

public MyCanvasView(Context context){
    super(context);
    for(int i = 0; i < 100; i++){
        squares[i] = new Square();
        squares[i].setIntervals();
    }
}
}
首先初始化数组。正方形[]正方形=新正方形[100];看见