Die for-each Schleife
Die for-each Schleife ist speziell für Arrays und Collections gedacht, denn diese Schleife enthält keine Zählvariable, enthält aber nacheinander alle Einträge des Arrays oder der Collection.Buch[] buecher = …;
for (Buch buch : buecher){
System.out.println(buch.getTitel());
}
Dabei wird in den Klammern der Schleife eine Variable vom Typ des Arrays und davor, mit einem Doppelpunkt getrennt, das Array welchem die Werte genommen werden.
Der Hauptvorteil dieser Schleife ist, das sofort klar ist was ihre Aufgabe ist: durch alle Werte des Arrays zu iterieren. Damit vermeidet man auf potenzielle Fehler der for-Schleife wie zum Beispiel dass in der Abbruchbedingung i <= array.length angegeben wird, was zu einer IndexOutOfBoundsException führt.
Die Limitierung der for-each Schleife ist, dass keine neuen Objekte ins Array geschrieben oder durch andere ersetzt werden können. Da keine Zählvariable vorhanden ist, kann auch die Position im Array nicht beeinflusst werden.