编译并运作:
public class Test {
public static int[] array;
public static void main(String[] args) {
int[] temp = {42};
array = temp;
}
}
这不是:
public class Test {
public static int[] array;
public static void main(String[] args) {
array = {42};
}
}
这是为什么?如何在不使用临时局部变量的情况下将数组分配给非局部变量?
答案 0 :(得分:5)
该变量已被声明。你需要这样分配它:
array = new int[] {42};
答案 1 :(得分:0)
初始化程序只能在声明时发生
在您的情况下,您已将array
声明为static
成员,因此您错过了机会...