gpt4 book ai didi

java - 通过循环更改矩阵的名称

转载 作者:行者123 更新时间:2023-12-01 12:43:11 26 4
gpt4 key购买 nike

我想我可以确定这个问题的答案,无论如何谢谢你 公共(public)类矩阵{

    private double[][] mat;

public Matrix(double[][] mat) {
this.mat = mat;
}

public double[][] getMatrix() {
return mat;
}

public void setMatrix(double[][] mat) {
this.mat = mat;
}

最佳答案

引用答案here ,您应该创建一个类来保存二维数组作为数据结构。一个例子是:

public class Matrix {

private double[][] mat;

public Matrix(double[][] mat) {
this.mat = mat;
}

public double[][] getMatrix() {
return mat;
}

public void setMatrix(double[][] mat) {
this.mat = mat;
}

然后,使用随机 float / double 创建矩阵的代码将如下所示:

public static ArrayList<Matrix> generateMatrices(int num, int size) {
ArrayList<Matrix> matrices = new ArrayList<Matrix>();

for(int i = 0; i < num; i++) {
double[][] matrix = new double[size][size];
//populate matrix with random numbers
matrices.add(new Matrix(matrix));
}
return matrices;
}

您要做的就是调用该方法并获取矩阵的 ArrayList:

ArrayList<Matrix> generated = generateMatrices(10, 5);

希望这有帮助。

编辑:

toString() 是所有 Object 类都具有的方法。如果您尝试打印一个对象,它将使用该对象的 toString 方法()。 toString() 方法原始地返回对象实例的内存位置。有些对象(例如 ArrayList 类)已经重写了该方法,以便程序员可以轻松地将其打印出来。您必须重写 toString() 方法才能打印出 Matrix 类,特别是存储在其类中的矩阵。您可以创建一个自定义方法来打印它,但我决定向您展示 OOP 的一小部分。在您的 Matrix 类中,添加这段代码:

@Override
public String toString() {
stringedMat = "";

for(int i = 0; i < mat.length; i++) {
for(int j = 0; j < mat.length; j++) {
if(j != (mat.length - 1)) {
stringedMat += (mat[i][j] + " ");
}else{
stringedMat += mat[i][j];
}
}
stringedMat += "\n";
}

return stringedMat;
}

关于java - 通过循环更改矩阵的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24899612/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com