Я пытаюсь создать массив, в котором, по сути, находятся строки secondArr (двумерного массива).проблема в том, что когда мои cScore.size() == 7 (or equal to secondArr.size(),
не добавляются в allScore, а в конце всех (в данном случае 21, как myArr.size()=3
и secondArr.size()=7
. значения добавляются в один индекс, кто-нибудь знает, почему этокод кажется таким простым, но он мне не удался. В конце я хотел бы получить массив из 3 столбцов и 7 строк (но в этом случае только 1 столбец и 7 строк, и как только я получу это, чтобы работатьзатем я добавлю остальное.)
Мой код выглядит следующим образом (это всего лишь небольшой фрагмент):
int rowsNum = allScores.size();
int colsNum = allScores.get(0).size();
ArrayList<ArrayList<Integer>> result = new ArrayList<ArrayList<Integer>>(colsNum);
for (int rowIdx = 0; rowIdx < colsNum; rowIdx++) {
ArrayList<Integer> rows = new ArrayList<Integer>(rowsNum);
for (int colIdx = 0; colIdx < rowsNum; colIdx++) {
rows.add(allScores.get(colIdx).get(rowIdx)); {
}
result.add(rows);
}
// с использованием синтаксиса prov. by msi ....
исходный массив allScores: [[2, 1, 3], [3, 1, 2], [2, 1, 3], [3, 1, 2], [2, 1,3], [3, 1, 2], [1, 2, 3]], когда он транспонируется с этим, он повторяется в [[2, 3, 2, 3, 2, 3, 1], [2, 3,2, 3, 2, 3, 1], [2, 3, 2, 3, 2, 3, 1], [2, 3, 2, 3, 2, 3, 1], [2, 3, 2,3, 2, 3, 1], [2, 3, 2, 3, 2, 3, 1], [2, 3, 2, 3, 2, 3, 1]]