2D数组中的随机数

时间:2012-03-01 13:57:30

标签: java random multidimensional-array

我想在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之间的其他内容是随机的 我怎样才能做到这一点?

3 个答案:

答案 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()遍历数组并在此之后设置固定值。

(我太慢了......)