我的二维数组充满了零而不是随机数

时间:2019-10-29 20:15:44

标签: java multidimensional-array

我创建了一个二维数组,我想用最多10个范围内的随机数字填充。但是,打印的最终结果最终全为零。我看不到我的代码有什么问题,并且我确定一切正确。我在Stack Overflow上搜索了类似的问题,但是找不到与我的问题类似的问题。我的代码如下:

int [][] array = new int [3][3];
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++)
{   array[i][j] = ( (int) Math.random() * 10 );  
System.out.print(array[i][j] + " ");  } 
System.out.println(" ");     }

1 个答案:

答案 0 :(得分:2)

问题很简单。它只是将mybb_settinggroups强制转换为 int ,而不是乘法结果。
您的原始代码包含以下行:

Math.random()

它将array[i][j] = ( (int) Math.random() * 10 ); 强制转换为Math.random(),而int在间隔 [0..1] 中返回 double 。强制转换为Math.random()的结果将为0。 相反,您应该做的是将int乘以10:

Math.random()

这是完整的工作代码:

array[i][j] = ( (int) (Math.random() * 10) );