For-silmukan yleinen muoto on
for (esittelyosa; ehto; päivitysosa)
{
Toistettavat komennot
}
Huomaa puolipisteiden käyttö: for-rivin perään ei tule puolipistettä. Tulkki ei varoita, mikäli rivi päättyy puolipisteeseen. Toistettavia lauseita ei kuitenkaan suoriteta, sillä tulkki ymmärtää, että koko for-rakenne loppuu puolipisteeseen.
Esittelyosassa voidaan esitellä silmukkamuuttuja ja antaa sille alkuarvo. Ehto-osassa on ehto, milloin silmukkaa tehdään. Päivitysosa suoritetaan aina silmukan tekemisen jälkeen ja siinä yleensä kasvatetaan silmukkamuuttujaa.
Esittelyosassa ei välttämättä tarvitse kertoa silmukkamuuttujan tyyppiä, mikäli muuttuja on jo esitelty yleisessä muuttujien esittelylohkossa.
Ehto-osa on tavallinen ehto. Mikäli ohjelmaa halutaan tehostaa, niin ehtoon voi liittää lisäehtoja && operaattorilla.
Päivitysosassa on hyviksi havaittu seuraavia:
i++
muuttujan i kasvatus yhdellä
i=i+2
muuttujan i kasvatus kahdella
i=i*2
muuttujan i kaksinkertaistaminen
i--
muuttujan i pienennys yhdellä
i=i-2
muuttuan i pienennys kahdella
Esimerkki. Ohjelmassa on silmukka, joka tulostaa silmukassa silmukkamuuttujan arvon.
class For_silmukka { public static void main(String[] args) { for (int i=0; i <= 20; i++) { System.out.println("Laskuri i on nyt: "+i); } } }
Ohjelman suoritus näyttää seuraavalta: (etsi kuvasta virhe)
Seuraavassa on kaksi ohjelmaa. Toinen, joka tulostaa viiden kertotaulun kömpelösti yhdessä tulostuslausekkeessa. Paremmassa toteutuksessa on käytetty for-silmukkaa. Ohjelma voi olla hieman vaikeamman oloinen, mutta sen muuttaminen esimerkiksi 6:n kertotaululle on helppoa.
//Ohjelma tulostaa 5:n kertotaulun class Esimerkki { public static void main(String[] args) { System.out.print(5 * 1 + "," + 5 * 2 + "," + 5 * 3 + "," + 5 * 4 + "," + 5 * 5 + "," + 5 * 6 + "," + 5 * 7 + "," + 5 * 8 + "," + 5 * 9 + "," + 5 * 10); } }
//Ohjelma tulostaa 5:n kertotaulun class Esimerkki { public static void main(String[] args) { int minka_taulu = 5; for (int i = 0; i <= 10; i++) { System.out.print(5*i + ","); } } }
Historiallisista syistä silmukkamuuttujan niminä käytetään kirjaimia i, j, k jne.