Если я правильно понял ваш вопрос, то вам нужно вывести все числа с диагонали.
И у вас есть двумерный массив:
int [][] arr = new int [][]{
{0, 1, 2},
{4, 5, 6},
{1, 1, 1}
};
Как решить вашу проблему:
- Создайте переменную-счётчик (зачем она нужна, увидите дальше). Присвойте ей значение 0:
int counter = 0;
- Создайте новый одномерный массив, в который будут записываться уже готовые нужные значения. Длинна этого массива будет равна количеству массивов в двумерном массиве:
int [] newArray = new int [arr.length];
- Создайте цикл
foreach
, который будет проходиться по массивам, которые лежат внутри двумерного (двумерный массив - массив массивов). В цикле увеличивайте переменную counter
на 1
. В индекс под номером counter
массива newArray
кладите индекс под номером counter
массива j
.
for(int[] j : arr){
newArray[counter] = j[counter];
counter++;
}
- Можно вывести новый массив на экран, чтобы проверить, всё ли верно. Это можно сделать циклом, но так быстрее:
System.out.println(java.util.Arrays.toString(newArray));
Вывод:
[0, 5, 1]
P.S
Я убедительно вас прошу не просто скопировать решение, а разобраться в нём. Я специально всё очень подробно расписал. Если мой ответ помог, то вы можете пометить его как решение =).