Pętla for to instrukcja przepływu sterowania używana do wielokrotnego wykonywania bloku kodu. W Go pętla for jest jedyną zapętloną konstrukcją.
Możesz użyć pętli for do powtórzenia bloków kodu i symulacji pełnego zakresu pętli z innych języków, w tym pętli for...each, while i do...while.
Zainstaluj Przejdź do początku
Upewnij się że masz Idź zainstalowany do naśladowania. Większość z tych przykładów wymaga fmt pakiet i powinieneś użyć ogólnej struktury, takiej jak ta:
pakiet Główny
import „fmt”
funkcjonowaćGłówny() {
// kod idzie tutaj
}
Trójskładnikowa pętla w Go
Jest to prawdopodobnie najczęstsza pętla for. Jak sama nazwa wskazuje, składa się z trzech elementów: wartości początkowej, warunku i oświadczenia post. Oto składnia:
do inicjalizacji; stan; Poczta {
sprawozdania)
}
W tej pętli, po inicjalizacji, oceniany jest warunek. Jeśli prawda, instrukcje w bloku pętli for są wykonywane, po których następuje instrukcja post. Program powtarza ten proces, aż warunek przestanie być oceniany jako prawdziwy. Poniżej znajduje się przykład.
dla i := 1; i <= 5; i++ {
fmt.Drukuj(i)
}
Tutaj:
- zestawy inicjujące i do 1
- warunek jest ja <= 5
- oświadczenie o poczcie jest i++
Ta pętla for wyświetla bieżącą wartość i jeśli jest mniejszy lub równy 5. „Wyciąg post” dodaje 1 do i po każdej pętli i raz i dostaje się do 5, pętla się kończy. Bez instrukcji „post” pętla wykonywałaby się nieskończenie wiele razy i potencjalnie powodowałaby awarię programu.
Pętla For-Each w Go
Go nie ma pętli for-each, ale możesz zmodyfikować pętlę for, aby przemierzać kolekcję elementów. Oto składnia:
dla indeksu wartość := zbiór zakresów {
// ciało
}
Kolekcja może być tablicą, wycinkiem, łańcuchem lub mapą albo wartościami odebranymi w kanale. Indeks to pozycja w kolekcji. Wartość jest elementem w indeksie.
Jeśli zależy Ci tylko na wartości, pomiń indeks w następujący sposób:
dla _, wartość := wycinek zakresu {}
W poniższym przykładzie pętla przemierza tablicę i drukuje zarówno indeks, jak i wartość każdego znajdującego się w niej elementu.
tablica := []ciąg {"Witam", "świat"}
dla ja, j := zakres szyk {
fmt.Drukuj(i, j)
}
Loop w Go
Możesz użyć pętli for, aby osiągnąć podczas gdy funkcjonalność pętli. W pętli while instrukcja działa tak długo, jak długo warunek pozostaje spełniony. Rozważ następujące:
ja := 1
dla mnie <= 5 {
ja *= 2
}
fmt.Drukuj(i)
W tym kodzie, podczas gdy i jest mniejsza lub równa 5, jest mnożona przez 2 przy każdym uruchomieniu pętli.
Do…Podczas pętli w Go
Pętla do...while różni się od pętli while, ponieważ treść pętli zostanie wykonana co najmniej raz. Istnieją dwa podejścia do implementacji tego w Go.
- Upewnij się, że warunek dla pierwszej iteracji jest ustawiony na true.
Ponieważ warunek początkowy jest ustawiony na true, i jest drukowany, a następnie zwiększany w pierwszej iteracji. Od warunku (ja <=5) zwraca wartość false podczas drugiej iteracji, pętla kończy działanie.ja := 10
dla następny := PRAWDA; następny; następny = ja <= 5 {
fmt.Drukuj(i)
i++
}// Wydrukuje 10
- Wykonaj treść pętli raz przed sprawdzeniem warunku.
W powyższej pętli for 10, które jest wartością i, jest wypisywane jako pierwsze, a następnie wykonywana jest instrukcja if. Jeśli warunek jest spełniony, pętla się przerywa, w przeciwnym razie pętla jest kontynuowana.ja := 10
dla {
fmt.Drukuj(i)
i++Jeśli ja >= 5 {
przerwanie;
}
}// Wydrukuje 10
Inne instrukcje przepływu sterowania
Pętle w programowaniu są ważne, ponieważ upraszczają powtarzalne zadania i oszczędzają czas. Zamiast pisać wiersz kodu dziesięć razy, możesz po prostu utworzyć pętlę, która uruchomi się dziesięć razy. Inne instrukcje przepływu sterowania to if, if...else, if...else if...if i switch.
Co nowego w wersji Go 1.18
Czytaj dalej
Powiązane tematy
- Programowanie
- Programowanie
O autorze

Mary Gathoni jest programistą z pasją do tworzenia treści technicznych, które mają nie tylko charakter informacyjny, ale także angażują. Kiedy nie koduje ani nie pisze, lubi spędzać czas z przyjaciółmi i przebywać na świeżym powietrzu.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Kliknij tutaj, aby zasubskrybować