Bucla for este o instrucțiune de flux de control folosită pentru a executa în mod repetat un bloc de cod. În Go, bucla for este singura construcție în buclă.
Puteți folosi bucla for pentru a repeta blocuri de cod și pentru a simula o gamă completă de bucle din alte limbi, inclusiv bucle for...each, while și do...while bucle.
Instalați Go to Begin
Asigura-te ca ai Du-te instalat să urmeze. Cele mai multe dintre aceste exemple necesită fmt pachet și ar trebui să utilizați o structură generală ca aceasta:
pachet principal
import "fmt"
funcprincipal() {
// codul merge aici
}
O buclă cu trei componente pentru Go
Aceasta este probabil cea mai comună pentru buclă. După cum sugerează și numele, este nevoie de trei componente: valoarea inițială, o condiție și o declarație post. Iată sintaxa:
pentru inițializare; condiție; post {
declarație (e)
}
În această buclă, după inițializare, condiția este evaluată. Dacă este adevărat, instrucțiunile din blocul bucla for se execută, urmate de instrucțiunea post. Programul repetă acest proces până când condiția nu mai devine adevărată. Mai jos este un exemplu.
pentru i := 1; i <= 5; i++ {
fmt.Println(i)
}
Aici:
- seturile de inițializare i la 1
- conditia este i <= 5
- declarația postului este i++
Această buclă for tipărește valoarea curentă a i dacă este mai mică sau egală cu 5. „Declarația post” adaugă 1 la i după fiecare buclă și o dată i ajunge la 5, bucla se termină. Fără „instrucțiunea post”, bucla s-ar executa de nenumărate ori și ar putea duce la blocarea programului.
O buclă pentru fiecare în Go
Go nu are o buclă for-each, dar puteți modifica o buclă for pentru a parcurge o colecție de elemente. Iată sintaxa:
pentru index, valoare := colecție interval {
// corp
}
Colecția poate fi o matrice, secțiune, șir sau hartă sau valori primite pe un canal. Indicele este poziția în colecție. Valoarea este elementul de la index.
Dacă vă pasă doar de valoare, omiteți indexul astfel:
pentru _, valoare := porțiune de interval {}
În exemplul de mai jos, bucla traversează matricea și tipărește atât indexul, cât și valoarea fiecărui element din acesta.
matrice := []șir{"Buna ziua", "lume"}
pentru i, j := interval matrice {
fmt.Println(i, j)
}
O buclă While în Go
Puteți folosi bucla for pentru a obține funcționalitatea buclei while. Într-o buclă while, o declarație rulează atâta timp cât o condiție rămâne adevărată. Luați în considerare următoarele:
eu := 1
pentru eu <= 5 {
eu *= 2
}
fmt.Println(i)
În acest cod, în timp ce i este mai mică sau egală cu 5, se înmulțește cu 2 de fiecare dată când rulează bucla.
A Do...While Loop in Go
Bucla do...while este diferită de bucla while deoarece corpul buclei se va executa cel puțin o dată. Există două abordări pentru implementarea acestui lucru în Go.
- Asigurați-vă că condiția pentru prima iterație este setată la adevărată.
Deoarece condiția inițială este setată la adevărată, i este tipărit și apoi incrementat în prima iterație. Din moment ce starea (eu <=5) se evaluează ca fals în timpul celei de-a doua iterații, bucla iese.eu := 10
pentru urmatorul := Adevărat; Următorul; următorul = i <= 5 {
fmt.Println(i)
i++
}// Se va tipări 10
- Executați corpul buclei o dată înainte de a verifica starea.
În bucla for de mai sus, 10, care este valoarea lui i, este imprimat mai întâi, apoi se execută instrucțiunea if. Dacă condiția este adevărată, bucla se întrerupe, în caz contrar, bucla continuă.eu := 10
pentru {
fmt.Println(i)
i++dacă eu >= 5 {
pauză;
}
}// Se va tipări 10
Alte instrucțiuni de flux de control
Buclele în programare sunt importante deoarece simplifică sarcinile repetitive și economisesc timp. În loc să scrieți o linie de cod de zece ori, puteți crea pur și simplu o buclă care rulează de zece ori. Alte instrucțiuni de flux de control sunt instrucțiuni if, if...else, if...else if...if și switch.
Ce este nou în Go Versiunea 1.18
Citiți în continuare
Subiecte asemănătoare
- Programare
- Programare
Despre autor
Mary Gathoni este un dezvoltator de software cu o pasiune pentru crearea de conținut tehnic care nu este doar informativ, ci și antrenant. Când nu codifică sau nu scrie, îi place să iasă cu prietenii și să fie în aer liber.
Aboneaza-te la newsletter-ul nostru
Alăturați-vă buletinului nostru informativ pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!
Click aici pentru a te abona