Java - pętla for dla początkujących
W tym artykule została przedstawiona podstawowa wiedza, która pomoże zrozumieć działanie oraz zastosowanie pętli for
.
Pętle są wykorzystywane w programowaniu bardzo często. Stosując pętle ułatwiamy sobie życie i nie musimy wykonywać niektórych rzeczy manualnie, dzięki czemu oszczędzamy czas.
Wyobraźmy sobie, że chcesz wypisać po kolei 100 liczb, albo lepiej 10 000 liczb - zajmie to dużo czasu, a przy użyciu pętli for
dosłownie kilkanaście sekund.
Przy pomocy poniższego kodu można błyskawicznie wypisać liczby od 0 do 100.
public class PetlaForPrzyklad {
public static void main(String[] args) {
for (int i = 1; i <= 100 ; i++) {
System.out.println(i);
}
}
}
Wynik z konsoli:
1
2
3
4
5
6
7
8
9
10
...
90
91
92
93
94
95
96
97
98
99
100
Już wiesz po co tworzy się pętle - teraz przyszedł czas, żeby krok po kroku zrozumieć ich działanie.
Pętla for
składa się z trzech elementów (wartości są wzięte z przykładu poniżej):
i = 1
-> przypisanie wartości początkowej
i <= 3
-> sprawdzenie postawionego warunku
i++
-> operator inkrementacji (wartości mają iść w górę)
public class Przyklad1 {
public static void main(String[] args) {
for (int i = 1; i <= 3 ; i++) {
System.out.println("i: " + i);
}
}
}
Wynik:
i: 1
i: 2
i: 3
Na poniższym grafie, krok po kroku, zostało przedstawione w jaki sposób zadziałała pętla for
.
Skoro wartości w pętli for
mogą iść w górę, to mogą iść też w dół. Ważna jest tutaj ostatnia część pętli. Wcześniej użyty został operator inkrementacji i++
, jednakże w przypadku, gdy chcemy by wartości malały trzeba użyć operator dekrementacji czyli i--
. Poniżej znajduje się analogiczny przykład oraz graf przedstawiający, krok po kroku, przebieg pętli z i--
.
public class Przyklad2 {
public static void main(String[] args) {
for (int i = 3; i >= 1 ; i--) {
System.out.println("i: " + i);
}
}
}
Wynik:
i: 3
i: 2
i: 1
Na poniższym grafie, krok po kroku, zostało przedstawione w jaki sposób zadziałała pętla for
z operatorem dekrementacji tak zwany for odwrotny z i-- (odliczanie w dół 3, 2, 1):