【发布时间】: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