public class lab {
public static void main (String args[]){
double[][] g = {RandomArray(3)};
printArray(g);
}
private static void printArray(double[][] g) {
System.out.println(Arrays.deepToString(g));
}
public static double[][] RandomArray(int n) {
double[] [] RandomArray = new double[n] [n];
Random randomNumberCreator = new Random();
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
RandomArray[i][j] = randomNumberCreator.nextDouble() * 100;
}
}
return RandomArray;
}
}
我不知道我的RandomArray方法出了什么问题,我希望它适用于二维数组,但是我明确地犯了一个错误,因为下面的行正在接收错误,我不确定为什么会发生这种情况正在发生。如果你能向我解释我所犯的错误,我将不胜感激。这个数组有什么问题?
double [] [] g = {RandomArray(3)};
欢迎堆栈溢出!请查看我们的[SO问题清单](http://meta.stackoverflow.com/questions/260648/stack-overflow-question-checklist)来帮助你提出一个好问题,从而得到一个很好的答案。 –
任何事情开始机智好命名!对于快速阅读器RandomArray(3)'创建类RandomArray的新对象,但是在你的代码中它是一个包装随机数组的方法。所以,你自己开始遵循Java命名约定。如果该方法有一个合适的名称,那么失败的行将是'double [] [] g = {createRandomArray(3)};'并且这表明您将由您的方法创建的数组包装到另一个数组维度中, ] [] []'。所以在重命名该方法后,请移除大括号。 –
重复它很烦人,但发布问题和等待答案比搜索要花费更长的时间。 – efekctive