【问题标题】:How to add rows and cols as a list into a matrix?如何将行和列作为列表添加到矩阵中?
【发布时间】:2018-03-27 08:03:47
【问题描述】:

首先我初始化了一个二维数组:

List<List<T>> matrix; // matrix is an 2D array;
public Table(Class<T> t) {;
    matrix = new ArrayList<List<T>>();
}

然后我有一个 addCow 和 addRow 方法:

public void addRow(int i) {
    List<T> list = new ArrayList<T>();
    for ( int j = 0; j < cols(); j++ )
    {
        list.add(null);
    }
    matrix.add(i, list);//add a list of null to the matrix
}

public void addCol(int j) {
    if (rows() == 0) return;
    for(int i = 0; i < rows(); i++){
      matrix.get(i).add(j, null);// HERE IS MY PROBLEMS
    }
}

输出是

.

所以我的问题是,如何将列作为列表(或完整集合)添加到矩阵中,就像 addRow 方法所做的那样,现在 addCol 正在将元素一一添加到矩阵中,我得到了错误“正确性失败:添加新列后表中的列数不正确。” 我认为问题是我将列一个一个地添加为元素而不是一个集合。

【问题讨论】:

  • 程序的预期输出是什么?为什么 array[][] 对你来说不是一个有用的数据结构?
  • 实际问题是什么?问题只是right now addCol was adding the elements one by one into the matrix,如果是,为什么?它不工作吗?

标签: java matrix arraylist multidimensional-array collections


【解决方案1】:

如果要添加收藏,请使用addAll()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    相关资源
    最近更新 更多