如何将行和列作为列表添加到矩阵中?
问题描述:
首先,我已初始化的2D阵列:如何将行和列作为列表添加到矩阵中?
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将元素逐个添加到矩阵中,并且出现了错误“正确性失败:添加新列后,表格中的列数不正确。” 我认为问题是我作为一个元素逐列添加列而不是一组。
答
如果你想添加一个集合,然后使用addAll()
你的程序的预期输出是什么?为什么array' [] []'对你来说不是一个有用的数据结构? – nullpointer
实际问题是什么?问题只是'现在addCol将元素逐个添加到矩阵中',如果是这样,为什么?它不工作? – pirho