A for-ciklus lehetőséget ad arra, hogy egy utasításcsoportot ismételten végrehajts, amíg valamilyen feltétel teljesül. A ciklus négy részből áll:
for (initialization; test; update) {
body;
}
Az initialization beállítja a ciklus kezdeti állapotát, és pontosan egyszer fut le, a ciklus legelején.
Általában egy olyan változót deklarál és ad neki értéket, amelyet a test kifejezés és az update utasítás használ.
Például:
int i = 1
A test kifejezés azt vizsgálja, hogy véget kell-e érnie a ciklusnak.
Ha igaz az értéke, akkor lefut a ciklusmag, majd az update kifejezés.
Ha hamis, akkor sem a ciklusmag, sem az update utasítás nem fut le, és a végrehajtás a ciklus záró zárójele után folytatódik.
Általában azt a változót vizsgálja, amelyet az inicializáló részben adtunk meg.
Például:
i <= 10
A ciklusmag végrehajtása után lefut az update kifejezés.
Általában valamilyen értékkel növeli vagy csökkenti a ciklusváltozót.
Például:
i++
Egy for-ciklus, amely kiírja az első négy négyzetszámot, így nézne ki:
for (int i = 1; i <= 4; i++) {
System.out.println(i * i);
}
/* =>
1
4
9
16
*/
Ha egy kollekció minden elemét be szeretnéd járni, akkor a for-each ciklus az ajánlott, de for ciklussal is meg lehet oldani, például így:
for (int i = 0; i < array.length; i++) {
System.out.print(array[i]);
}
A for ciklusnak azonban van néhány előnye a for-each ciklussal szemben:
for ciklust, ahol nincs szó kollekciókról.