Transpose Arraylist > в JavaJAVA

Программисты JAVA общаются здесь
Anonymous
Transpose Arraylist > в Java

Сообщение Anonymous »

У меня есть метод, пытающийся транспонировать Arraylist, содержащий Arraylist строки, называемый matrix и вернуть новый массив. < /p>

Я нашел транспонированные значения в Java 2D ArrayList, но, похоже, это для массивов, а не массивов. Мой 2D -массив имеет неизвестные размеры, прямоугольные или, возможно, нерегулярные (но никогда не квадратные). < /P>

Моя идея состояла в том, чтобы прочитать каждый внутренний массив и добавить элементы во внутренние массивы исходящей матрицы. < /P>

public static ArrayList transpose (ArrayList matrixIn){
ArrayList matrixOut = new ArrayList();
//for each row in matrix
for (int r = 0; r < matrixIn.size(); r++){
ArrayList innerIn = matrixIn.get(r);

//for each item in that row
for (int c = 0; c < innerIn.size(); c++){

//add it to the outgoing matrix

//get matrixOut current value
ArrayList matrixOutRow = matrixOut.get(c);
//add new one
matrixOutRow.add(innerIn.get(c));
//reset to matrixOut
matrixOut.set(c,matrixOutRow);
}
}
return matrixOut;
}
< /code>

Я получаю ошибку "indexoutofboundsexception: index: 0, size: 0" при < /p>

//get matrixOut[v]
ArrayList matrixOutRow = matrixOut.get(v);
< /code>

Что я делаю не так с этой штукой? < /p>

Подробнее здесь: https://stackoverflow.com/questions/280 ... ng-in-java

Вернуться в «JAVA»