## How to iterate inside a two-dimensional array using a for-loop?

Iterating through a two-dimensional array can be a bit challenging to grasp initially, so don't worry if it doesn't click right away. In this chapter, I'll demonstrate how to do it and explain how it functions.

We use a nested loop to iterate through a two-dimensional array, meaning one loop inside another. The outer loop iterates over the rows, while the inner loop iterates over the columns. Let's examine the syntax for iterating through a two-dimensional array using the example array we created in the previous section:

Main.java

Let's delve into the meaning of each element in the code snippet provided above:

• `int[][] twoDimensionalArray =` - This line initializes a two-dimensional array.
• `for (int i = 0; i < twoDimensionalArray.length; i++)` - The first for-loop iterates over the rows of our matrix. While we're on the first row, our program enters the nested loop, which doesn't impact the outer loop. The variable `i` represents the current row number;
• `for (int j = 0; j < twoDimensionalArray[0].length; j++)` - The second for-loop iterates over the columns of the matrix. While we're on the 0th row, we iterate through the columns of that row. The variable `j` represents the current column number;
• `System.out.print(twoDimensionalArray[i][j] + " ");` - In this line, we use `System.out.print` to display our values in a single line. Let's see how it operates: while we're on the 0th row, we iterate through the columns on that row. For example, `array[0][1]`, followed by `array[0][2]`, and so on. We continue through the columns as long as `j` is less than `array[0].length`. Once we reach `array[0].length`, we return to the outer array and move to the first row. For example, `array[0][3] -> array[1][0]`. We've reached our boundaries and then transitioned to row 1.

Your task is to locate and display the diagonal (from the top-left corner to the bottom-right corner) of the provided matrix on the screen:

Note

The diagonal represents a line in the matrix where the row and column numbers are identical.

Main.java

1. 1. Your `i` and `j` values should be the same;
2. 2. Try to use `if` statement to set this condition;
3. 3. You need to use a `for-loop` inside another `for-loop`.
``````
package com.example;

public class Main {
public static void main(String[] args) {
int[][] twoDimensionalArray = { {1, 2, 3, 4},
{6, 1, 2, 9},
{13, 0, 1, 6},
{11, 8, 4, 1} };

for (int i = 0; i < twoDimensionalArray.length; i++) {
for (int j = 0; j < twoDimensionalArray[0].length; j++) {
if (i == j) {
System.out.println(twoDimensionalArray[i][j]);
}
}
}
}
}
``````

Everything was clear?

Section 4. Chapter 5