Java:Tsüklid
Tsükkel (ik loop) võimaldab mingit koodiosa korrata teatud reeglite alusel. Kui näiteks programm peab väljastama numbrid ühest viieni, võib seda teha 5 reaga. Samas kui see programm peaks hakkama väljastama numbreid ühest tuhandeni, oleks 1000 rea kirjutamine väga ebapraktiline. Kui vaatate allolevat koodi, hakkab silma, et read on üsna sarnased:
System.out.println(0); System.out.println(1); System.out.println(2); System.out.println(3); System.out.println(4);
Ainuke erinevus ridade vahel on argument, mis println() meetodisse antakse kaasa. Vaatleme, kuidas sama asja lahendada erinevate tsüklitega.
FOR tsükkel
Pythonis oleks saanud kasutada sellist lahendust: <source lang="python"> for i in range(5):
print(i)
</source>
Javas saab kirjutada sellise koodi:
<source lang="java"> for (int i = 0; i < 5; i++) {
System.out.println(i);
} </source>
Üldine kuju:
for (initsialiseerimine; jätkamise-tingimus; uuendamine) { käsud }
initsialiseerimine käivitatakse ainult üks kord - kõige alguses. Jätkamise-tingimust kontrollitakse enne igat kordust. Kui jätkamise-tingimus annab tulemuseks true, pannakse käskude osa käima. Peale käskude käivitamist toimub uuendamine, millele järgneb jälle jätkamis-tingimuse kontrollimine.
Ehk siis for-tsükli käivitamise järjekord on selline:
- initsialiseerimine
- kui jätkamise-tingimus on tõene, jätkame, muul juhul lõpetatakse tsükli täitmine ära.
- käsud
- uuendamine
- jätkamise-tingimuse kontroll (ja sedasi hakkab korduma)
for-tsüklit saab kasutada ka selliselt, et mõni (kasvõi kõik) nendest kolmest osast on täitmata. Näiteks:
<source lang="java"> int i = 0; for ( ; i < 10; i++) {
System.out.println(i);
} </source>