这是我到目前为止所得到的......
public static void main(String[] args) {
Random random= new Random();
Matrix mR = new Matrix(3,3,random.nextDouble()) ;
System.out.println("Here is a 3x3 matrix with random values " +Arrays.deepToString(mR.getArray()));
}
问题是当我打印出来时,所有值都是相同的。我需要的是每个索引的不同值。我知道这可以通过创建一个数组,为其分配随机值,然后将其复制到矩阵中来完成。但我需要直接从矩阵mR中做到这一点。
答案 0 :(得分:1)
Random.nextDouble
返回double
,因此在上面的代码中,您调用的是此构造函数:
Matrix(int m, int n, double s)
构造m-by-n常数矩阵。
你应该改为调用这个静态方法:
public static Matrix random(int m, int n)
如,
Matrix mR = Matrix.random(3, 3);
有关详细信息,请参阅doc。