我在一个数组中有一个数组,并希望使用 for each 循环对其进行初始化。
// class variable
Tree[][] trees;
// in constructor
this.trees = new Tree[length][with];
// initialize
for (Tree[] tree : this.trees){
for(Tree tree2 : tree){
tree2 = new Tree();
System.out.println(tree2);
}
}
for (Tree[] tree : this.trees) {
for (Tree tree2 : tree) {
System.out.println(tree2);
}
}
发生的事情是第一个 println 打印初始化的树,所以它们被初始化了。我以为一切都好。但是当我尝试使用这些树时,我得到了一个空指针异常。所以我尝试再次遍历数组,第二个 println 给我每棵树的 null 。怎么会这样?我在这里想念什么?谢谢!
编辑:哦,我很抱歉,这不是主要的,而是放置循环的构造方法。