我正在尝试用随机数填充数组,但即使使用单个数组,IDE 也拒绝工作。数组初始化有问题。根据 Schildt 的 Java SE 8 指南,可以像我一样创建几个数组,但是如果我尝试对其中的任何一个做一些事情,我会收到如下所示的错误。如果我只初始化 1 个数组,我不会收到任何错误。但是,如果我需要使用许多数组,我应该如何初始化它们?逐个?我在 C++ 中没有遇到过这样的事情。我知道创建 2D 数组更好,但我现在有一个练习来处理一些 1D 数组。PS:如果你不介意,一个额外的问题。是否可以索引这些数组以便稍后在循环中操作它们。也许在枚举或什么的帮助下?public static void main(String[] args) { int [] a,b,c,d,e,f,g,h,i = new int[4]; //int a[],b[],c[],d[],e[],f[],g[],h[],i[] = new int[4]; - this doesn't work either Random random = new Random(); for (int y=0; y<4; y++) { a[y] = random.nextInt(9); //The local variable a may not have been initialized System.out.print(a[y] + " "); //The local variable a may not have been initialized } }
2 回答
慕尼黑8549860
TA贡献1818条经验 获得超11个赞
好吧,如果您有固定数量的“长度为 4 的 int 数组”,您可以创建一个二维数组,而不是多个长度为 4 的一维数组。这看起来像这样:
int[][] a = new int[9][4]
//here 9 is the number of arrays you tried to create above, and 4 is the initial length
潇湘沐
TA贡献1816条经验 获得超6个赞
如果你写类似
int a, b = 5;
只有 b 将被初始化。
但是,您可以做的是
int a, b;
a = b = 5;
两者都将使用相同的值进行初始化。现在当你对数组做同样的事情时,所以
int[] a, b;
a = b = new int[4];
他们实际上会指向同一个实例/引用,这显然没有任何意义。
添加回答
举报
0/150
提交
取消