У меня есть метод, который принимает в размерах для массива в списке Paramsдоступ все элементы многомерного массива
private int[] anArray;
public MDArray(int... sizes){
anArray = new int[sizes[0]];
for (int u : anArray){
System.out.println(u);
}
Если я прохожу в (12,13), как Params в моей функции, то цикл печатает 0 12 раз. Я не уверен, как получить доступ к подслоям многомерного массива.
Я понимаю, что в Java нет реального многомерного массива, а не массива массивов.
Если я пытаюсь
for (int[] u: anArray) {
for (int elem: u) {
System.out.println(elem);
}
}
Это не удается, как и не является массивом но инт.
Я бы очень признателен за это.
Посмотрите на этот ответ: http://stackoverflow.com/a/17559021/5450645 –
J. su, я видел это, но я получаю «int не может быть преобразован в int []» как ошибка в «for (int [] a: flatArray)» – Benirving92
@ cricket_007 он создается в конструкторе в зависимости от списка пройденных измерений , Таким образом, это может быть int [], int [] [] или int [] [] [], поэтому мне нужно преобразовать как массивы 2-d, так и 3-мерные в 1-d – Benirving92