如何使用随机数打印2D数组

时间:2015-06-21 21:52:41

标签: java arrays random

我正在尝试编写一个打印2d数组的程序,其中随机数范围为100-10000,并打印出数组中的最大数,平均值和最小值。程序将询问用户行数和列数,并打印该数组中的随机数。

这是我的代码:

Random rand = new Random();

int randomnumber = rand.nextInt(9901) + 100;

Scanner console = new Scanner(System.in);

System.out.println("Enter row");
int n = console.nextInt();

System.out.println("Enter column");
int y = console.nextInt();

int[][] array = new int[n][y];
array[n][y] = randomnumber;

int k;
for (int i = 0; i <= array.length; i++) {
    for (k = 0; k <= array[i].length; k++) {
        System.out.print(array[i][k]);
    }
}

1 个答案:

答案 0 :(得分:1)

如果要使用随机值填充数组,则需要在循环中生成随机值,然后将它们写入该循环中的数组。到目前为止,您只生成一个值(并将其放在无效位置)。

此外,由于数组是从0开始的,因此您的循环应为for(i=0; i<arr.length; i++);,而不是<=

这里有一些代码:

// don't declare k here
for(int i=0;i<array.length;i++){

 for(int k=0;k<array[i].length;k++){
      array[i][k]=rand.nextInt(9901)+100;
      System.out.print(array[i][k]);


 }
 System.out.println(); // separate rows
}