Szukaj…
Składnia
- for ( identyfikator zmiennej w kolekcji iteracyjnej ) { wyrażenie }
- while ( warunek ) { wyrażenie }
- do { wyrażenie } while ( warunek );
- przerwa;
- kontyntynuj;
Dla
Pętle For iterują po kolekcji iteracyjnej . Kolekcja iteracyjna to każda klasa, która strukturalnie ujednolica się z typami Iterator<T> lub Iterable<T> ze standardowej biblioteki Haxe.
Pętla for, która rejestruje liczby z zakresu od 0 do 10 (wyłącznie), można zapisać w następujący sposób:
for (i in 0...10) {
trace(i);
}
Identyfikator zmiennej i przechowuje indywidualną wartość elementów w kolekcji iteracyjnej. To zachowanie jest podobne do każdego w innych językach.
Pętla for, która rejestruje elementy w tablicy, może zatem zostać zapisana w następujący sposób:
for (char in ['a', 'b', 'c', 'd']) {
trace(char);
}
Wypróbuj przykład na try.haxe.org .
Bibliografia
Podczas
Pętle while wykonują wyrażenie ciała, dopóki warunek pętli będzie miał wartość true .
Pętla while, która rejestruje liczby z zakresu od 9 do 0 (włącznie), można zapisać w następujący sposób:
var i = 10;
while (i-- > 0) {
trace(i);
}
Wypróbuj przykład na try.haxe.org .
Bibliografia
Do-while
Pętle „do-while” wykonują wyrażenie ciała co najmniej raz, a następnie wykonują je, dopóki warunek pętli ma wartość true .
Pętla do-while, która rejestruje liczby z zakresu od 10 do 0 (włącznie), można zapisać w następujący sposób:
var i = 10;
do {
trace(i);
} while (i-- > 0);
Wypróbuj przykład na try.haxe.org .
Bibliografia
Kontrola przepływu
Przepływ lub wykonanie pętli można kontrolować za pomocą wyrażeń break i continue .
Przerwa
break wychodzi z bieżącej pętli. W przypadku zagnieżdżenia pętli w innej pętli, pętla nadrzędna pozostaje nienaruszona.
for (i in 0...10) {
for (j in 0...10) {
if (j == 5) break;
trace(i, j);
}
}
Wypróbuj przykład na try.haxe.org .
Kontyntynuj
continue pomija bieżącą iterację pętli w punkcie wyrażenia. W przypadku zagnieżdżenia pętli w innej pętli, pętla nadrzędna pozostaje nienaruszona.
for (i in 0...10) {
for (j in 0...10) {
if (j == 5) continue;
trace(i, j);
}
}
Wypróbuj przykład na try.haxe.org .