For in Karel

Java provides several ways to create loops. Here are some basic types of loops in Java.

public class ForLoops {
    public static void main(String[] args) {
        // The most basic type, with a single condition.
        int i = 1;
        while (i <= 3) {
            System.out.println(i);
            i = i + 1;
        }

        // A classic initial/condition/after for loop.
        for (int j = 0; j < 3; j++) {
            System.out.println(j);
        }

        // Java doesn't have a direct equivalent to Go's range over integers,
        // but we can achieve similar functionality with a for loop.
        for (int i = 0; i < 3; i++) {
            System.out.println("range " + i);
        }

        // An infinite loop that will continue until you break out of it
        // or return from the enclosing function.
        while (true) {
            System.out.println("loop");
            break;
        }

        // You can also continue to the next iteration of the loop.
        for (int n = 0; n < 6; n++) {
            if (n % 2 == 0) {
                continue;
            }
            System.out.println(n);
        }
    }
}

To run the program, compile it and then use java to execute:

$ javac ForLoops.java
$ java ForLoops
1
2
3
0
1
2
range 0
range 1
range 2
loop
1
3
5

Java provides several loop constructs including while, do-while, and for loops. The for loop in Java is particularly versatile and can be used in various ways, including as an enhanced for loop (also known as a for-each loop) when working with arrays or collections.

We’ll see some other loop forms later when we look at iterating over arrays, collections, and other data structures.