Definicja pętli for
jest następująca:
<instrukcje do wykonania>
Chyba najczęściej używana forma instrukcji for
wygląda tak:
1 2 3 4 5 6 | for (int i = 0; i < 10; i++) { int k = 0; for (k = 0; k < i; k++) { // zrób coś } } |
Widać, że inicjalizacja zmiennej w pętli może zostać połączona także z jej deklaracją. Należy pamiętać, że jeżeli deklarację przeprowadzimy w części związanej z inicjalizacją, to zmienna taka będzie widziana tylko w ramach instrukcji for
.
Nie trzeba ograniczać się do inicjalizacji tylko jednej zmiennej, można zrobić coś takiego:
1 2 3 | for (int i = 0, k = 0; i < 3 && k < 1; i++, k++) { System.out.println("Pętla : i = " + i + ", k = " + k); } |
Kolejne inicjalizacje zmiennych powinny być rozdzielone przecinkami i wszystkie są tego samego typu. Nie jest dozwolona taka konstrukcja:
1 2 3 | for (int i = 0, long k = 0; i < 3 && k < 1; i++, k++) { System.out.println("Pętla : i = " + i + ", k = " + k); } |
Można to ominąć, przenoszą deklarację zmienny poza pętlę for:
1 2 3 4 5 | int i; long k; for (i = 0, k = 0; i < 3 && k < 1; i++, k++) { System.out.println("Pętla : i = " + i + ", k = " + k); } |
Jest także możliwa tak egzotyczna konstrukcja:
1 2 3 4 |
Oczywiście, nie jest to zalecany sposób komunikowania, że rozpoczyna się pętla :).