gpt4 book ai didi

java - 尝试使用 ArrayList 创建矩阵?

转载 作者:行者123 更新时间:2023-11-30 02:12:57 27 4
gpt4 key购买 nike

尝试创建一个具有 int 列、行和值的通用类型的矩阵对象。 注意:下面的代码使用整数类型来简化。

示例输出:

21  703   22   23   

3 3 13 13 6

或者

   studone   studtwo  studthree

studfour studnine studten

studran studmoreran studplus

尝试:

  • 决定创建一个ArrayList,因为它的大小可以扩展
  • 我的想法:矩阵将有列、行...所以 x ArrayList 的行和 y ArrayList 的列

    • 无法测试代码,但我觉得一定有更好的方法,for循环似乎过多?

这是构造函数:

private ArrayList<ArrayList<Integer>> matrixOne;

public Matrix(int rows, int columns) {

this.rows = rows;
this.columns = columns;

matrixOne = new ArrayList<ArrayList<ArrayList>>();

for(int i = 0; i < rows; i++) {
matrixOne.add(new ArrayList<ArrayList>());
}
for(int j = 0; j < columns; j++) {
matrixOne.get(j).add(new ArrayList<Integer>());
}

}

ISSUE: When trying to add value to a particular row/col, I get the following error in below method: The method add(int) is undefined for the type Integer

 // on method .add()      <-------- error
public void insert(int row, int column, int value) {
matrixOne.get(row).get(column).add(value);
}

最佳答案

你正在跟踪你的领域

private ArrayList<ArrayList<Integer>> matrixOne;

ArrayList<ArrayList<ArrayList>> matrixOne = new ArrayList<ArrayList<ArrayList>>();

除了 ArrayList 之外没有任何类型。试试这个:

matrixOne = new ArrayList<ArrayList<Integer>>();

对于shadowing a class variable

关于java - 尝试使用 ArrayList 创建矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49569600/

27 4 0