Bird
Raised Fist0
Javaprogramming~20 mins

Array traversal in Java - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Array Traversal Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of nested array traversal
What is the output of the following Java code that traverses a 2D array?
Java
public class Main {
    public static void main(String[] args) {
        int[][] matrix = {{1, 2}, {3, 4}};
        int sum = 0;
        for (int i = 0; i < matrix.length; i++) {
            for (int j = 0; j < matrix[i].length; j++) {
                sum += matrix[i][j];
            }
        }
        System.out.println(sum);
    }
}
A10
B24
C0
DCompilation error
Attempts:
2 left
💡 Hint
Think about adding all elements in the 2D array.
❓ Predict Output
intermediate
2:00remaining
Output of enhanced for-loop traversal
What will be printed by this Java code that uses an enhanced for-loop to traverse an array?
Java
public class Main {
    public static void main(String[] args) {
        String[] fruits = {"apple", "banana", "cherry"};
        for (String fruit : fruits) {
            System.out.print(fruit.charAt(0));
        }
    }
}
ACompilation error
Bapplebananacherry
Cabc\n
Dabc
Attempts:
2 left
💡 Hint
Look at the first character of each string.
🧠 Conceptual
advanced
2:00remaining
Understanding array traversal with break statement
What is the output of this Java code that traverses an array and uses a break statement?
Java
public class Main {
    public static void main(String[] args) {
        int[] numbers = {5, 10, 15, 20};
        int total = 0;
        for (int num : numbers) {
            if (num == 15) {
                break;
            }
            total += num;
        }
        System.out.println(total);
    }
}
A0
B30
C15
D50
Attempts:
2 left
💡 Hint
The loop stops when it reaches 15.
🔧 Debug
advanced
2:00remaining
Identify the error in array traversal
What error will this Java code produce when run?
Java
public class Main {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3};
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}
AArrayIndexOutOfBoundsException
BNullPointerException
CCompilation error
DNo output, infinite loop
Attempts:
2 left
💡 Hint
Check the loop condition and array indices.
🚀 Application
expert
3:00remaining
Calculate the product of all even numbers in an array
What is the output of this Java program that multiplies all even numbers in an array?
Java
public class Main {
    public static void main(String[] args) {
        int[] nums = {2, 3, 4, 5, 6};
        int product = 1;
        for (int n : nums) {
            if (n % 2 == 0) {
                product *= n;
            }
        }
        System.out.println(product);
    }
}
A120
B48
C0
D15
Attempts:
2 left
💡 Hint
Multiply only even numbers: 2, 4, and 6.

Practice

(1/5)
1. What does array traversal mean in Java?
int[] arr = {1, 2, 3};
easy
A. Creating a new array with the same elements
B. Visiting each element of the array one by one using a loop
C. Sorting the array elements in ascending order
D. Deleting elements from the array

Solution

  1. Step 1: Understand array traversal meaning

    Array traversal means going through each element in the array one by one.
  2. Step 2: Match with given options

    Only Visiting each element of the array one by one using a loop describes visiting each element using a loop, which is traversal.
  3. Final Answer:

    Visiting each element of the array one by one using a loop -> Option B
  4. Quick Check:

    Array traversal = visiting elements one by one [OK]
Hint: Traversal means visiting all elements step-by-step [OK]
Common Mistakes:
  • Confusing traversal with sorting
  • Thinking traversal means deleting elements
  • Mixing traversal with creating new arrays
2. Which of the following is the correct syntax to traverse an array int[] nums in Java?
easy
A. for(int i = 0; i < nums.length; i++) { System.out.println(nums[i]); }
B. for(int i = 1; i <= nums.length; i++) { System.out.println(nums[i]); }
C. for(int i = 0; i <= nums.length; i++) { System.out.println(nums[i]); }
D. for(int i = 0; i < nums.length - 1; i++) { System.out.println(nums[i]); }

Solution

  1. Step 1: Check loop start and end conditions

    The loop should start at 0 and run while i is less than nums.length to cover all indices.
  2. Step 2: Validate array access inside loop

    Accessing nums[i] is correct if i is within 0 to length-1. for(int i = 0; i < nums.length; i++) { System.out.println(nums[i]); } satisfies this.
  3. Final Answer:

    for(int i = 0; i < nums.length; i++) { System.out.println(nums[i]); } -> Option A
  4. Quick Check:

    Loop from 0 to length-1 = correct traversal [OK]
Hint: Loop from 0 to less than length for full traversal [OK]
Common Mistakes:
  • Starting loop at 1 instead of 0
  • Using <= length causing index out of bounds
  • Stopping loop early at length - 1
3. What will be the output of the following code?
int[] arr = {5, 10, 15};
for(int i = 0; i < arr.length; i++) {
  System.out.print(arr[i] + " ");
}
medium
A. 5 10 15
B. 15 10 5
C. 5 10 15 0
D. Error: ArrayIndexOutOfBoundsException

Solution

  1. Step 1: Understand the loop iteration

    The loop runs from i=0 to i=2 (arr.length=3), printing arr[i] each time.
  2. Step 2: Check printed values

    Values printed are arr[0]=5, arr[1]=10, arr[2]=15, each followed by a space.
  3. Final Answer:

    5 10 15 -> Option A
  4. Quick Check:

    Print elements in order = 5 10 15 [OK]
Hint: Prints elements in order from index 0 to length-1 [OK]
Common Mistakes:
  • Assuming reverse order output
  • Expecting extra zero at end
  • Thinking loop causes index error
4. Identify the error in this array traversal code:
int[] data = {2, 4, 6};
for(int i = 0; i <= data.length; i++) {
  System.out.println(data[i]);
}
medium
A. System.out.println should be outside the loop
B. Array declaration is incorrect
C. Loop condition should be i < data.length, not <= data.length
D. No error, code runs fine

Solution

  1. Step 1: Analyze loop condition

    The loop runs while i <= data.length, which means i can be equal to data.length (3).
  2. Step 2: Check array index access

    Accessing data[3] causes ArrayIndexOutOfBoundsException because valid indices are 0 to 2.
  3. Final Answer:

    Loop condition should be i < data.length, not <= data.length -> Option C
  4. Quick Check:

    Index must be less than length to avoid error [OK]
Hint: Use i < length, not i <= length in loops [OK]
Common Mistakes:
  • Using <= instead of < in loop condition
  • Ignoring array index limits
  • Thinking loop runs without error
5. Given an array int[] nums = {3, 6, 9, 12, 15};, write code to print only the even numbers by traversing the array.
hard
A. for(int i = 0; i < nums.length - 1; i++) { System.out.print(nums[i] + " "); }
B. for(int i = 1; i <= nums.length; i++) { if(nums[i] % 2 == 0) System.out.print(nums[i] + " "); }
C. for(int i = 0; i < nums.length; i++) { if(nums[i] % 2 != 0) System.out.print(nums[i] + " "); }
D. for(int i = 0; i < nums.length; i++) { if(nums[i] % 2 == 0) System.out.print(nums[i] + " "); }

Solution

  1. Step 1: Traverse the array correctly

    Loop from i=0 to i < nums.length to visit all elements safely.
  2. Step 2: Check condition for even numbers

    Use nums[i] % 2 == 0 to find even numbers and print them.
  3. Final Answer:

    for(int i = 0; i < nums.length; i++) { if(nums[i] % 2 == 0) System.out.print(nums[i] + " "); } -> Option D
  4. Quick Check:

    Traverse all and print only even numbers [OK]
Hint: Check nums[i] % 2 == 0 inside loop to print evens [OK]
Common Mistakes:
  • Using wrong loop bounds causing errors
  • Printing odd numbers instead of even
  • Missing condition inside loop
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard