我想在2d数组中创建随机数。
int i= 100;
int j= 200;
a[i][j] // is the random value between [0,1].
我的问题是我要修复a[1][j], a[2][j], ... , a[20][j]= 0.4
a[i][1],a[i][2], ... , a[i][30]=0.4
除了[0,1]
之外,0.4
之间的其他内容是随机的
我怎样才能做到这一点?
答案 0 :(得分:2)
值得记住的是,第一个数组索引是0
而不是1
我会用随机值填充矩阵,然后使用一个或两个循环来填充已知值。
答案 1 :(得分:1)
如果我正确理解您的问题,您希望阵列的第20行填充0.4,并且阵列的第30列也相同。这可以使用两个简单的for循环来完成:
public static void main(String args[])
{
for(int i=0; i<a.length; i++)
a[20][i] = 0.4; //fills row 20 with 0.4
for(int i=0; i<a[30].length; i++)
a[i][30] = 0.4; //fills column 30 with 0.4
}
之后,只需用随机数填充数组并进行简单的检查,而不是覆盖它们。例如:
for(int i=0; i<a.length; i++){
for(int j=0; i<a[i].length; j++){
if(a[i][j] != 0.4)
a[i][j] = //insert random number generator here.
}
}
答案 2 :(得分:-2)
正如彼得所说,通过2个For循环和Math.random()遍历数组并在此之后设置固定值。
(我太慢了......)