Ο βρόχος for είναι μια δήλωση ροής ελέγχου που χρησιμοποιείται για την επανειλημμένη εκτέλεση ενός μπλοκ κώδικα. Στο Go, ο βρόχος for είναι η μόνη κατασκευή βρόχου.

Μπορείτε να χρησιμοποιήσετε τον βρόχο for για να επαναλάβετε μπλοκ κώδικα και να προσομοιώσετε ένα πλήρες εύρος βρόχων από άλλες γλώσσες, συμπεριλαμβανομένων των βρόχων for...each, while και do...while.

Εγκαταστήστε το Go to Begin

Βεβαιωθείτε ότι έχετε Μεταβείτε εγκατεστημένο να ακολουθήσει. Τα περισσότερα από αυτά τα παραδείγματα απαιτούν το fmt πακέτο και θα πρέπει να χρησιμοποιήσετε μια συνολική δομή όπως αυτή:

πακέτο κύριος

εισαγωγή "fmt"

funcκύριος() {
// ο κώδικας πηγαίνει εδώ
}

Τριών συστατικών για Loop in Go

Αυτός είναι ίσως ο πιο συνηθισμένος βρόχος για. Όπως υποδηλώνει το όνομα, παίρνει τρία στοιχεία: την αρχική τιμή, μια συνθήκη και μια δήλωση ανάρτησης. Εδώ είναι η σύνταξη:

για αρχικοποίηση? κατάσταση; Θέση {
δήλωση(ες)
}

Σε αυτόν τον βρόχο, μετά την αρχικοποίηση, η συνθήκη αξιολογείται. Εάν είναι αληθές, οι δηλώσεις στο μπλοκ βρόχου for εκτελούνται, ακολουθούμενες από τη δήλωση ανάρτησης. Το πρόγραμμα επαναλαμβάνει αυτή τη διαδικασία έως ότου η συνθήκη δεν αξιολογείται πλέον ως αληθής. Παρακάτω είναι ένα παράδειγμα.

instagram viewer

για i := 1; Εγώ <= 5; i++ {
fmt.Εκτύπωση(Εγώ)
}

Εδώ:

  • τα σύνολα αρχικοποίησης Εγώ προς την 1
  • η συνθήκη είναι i <= 5
  • η ανάρτηση είναι i++

Αυτός ο βρόχος for εκτυπώνει την τρέχουσα τιμή του Εγώ αν είναι μικρότερο ή ίσο με 5. Η «δήλωση ανάρτησης» προσθέτει 1 στο Εγώ μετά από κάθε βρόχο και μία φορά Εγώ φτάνει στο 5, ο βρόχος τερματίζεται. Χωρίς τη «δήλωση ανάρτησης», ο βρόχος θα εκτελούσε άπειρες φορές και πιθανώς θα προκαλούσε την κατάρρευση του προγράμματος.

A For-Each Loop in Go

Το Go δεν έχει βρόχο για κάθε, αλλά μπορείτε να τροποποιήσετε έναν βρόχο for για να διασχίσετε μια συλλογή στοιχείων. Εδώ είναι η σύνταξη:

για ευρετήριο, τιμή := συλλογή εύρους {
// σώμα
}

Η συλλογή μπορεί να είναι πίνακας, φέτα, συμβολοσειρά ή χάρτης ή τιμές που λαμβάνονται σε ένα κανάλι. Ο δείκτης είναι η θέση στη συλλογή. Η τιμή είναι το στοιχείο στο ευρετήριο.

Εάν ενδιαφέρεστε μόνο για την τιμή, παραλείψτε το ευρετήριο ως εξής:

για _, τιμή := τομή εύρους {}

Στο παρακάτω παράδειγμα, ο βρόχος διασχίζει τον πίνακα και εκτυπώνει τόσο το ευρετήριο όσο και την τιμή κάθε στοιχείου σε αυτόν.

πίνακας := []συμβολοσειρά{"Χαίρετε", "κόσμος"}

Για i, j := εύρος πίνακας {
fmt.Εκτύπωση(Εγώ, ι)
}

A while Loop in Go

Μπορείτε να χρησιμοποιήσετε τον βρόχο for για να επιτύχετε ενώ η λειτουργικότητα βρόχου. Σε έναν βρόχο while, μια πρόταση εκτελείται εφόσον μια συνθήκη παραμένει αληθής. Σκέψου τα ακόλουθα:

i := 1

Για εγώ <= 5 {
i *= 2
}

fmt.Εκτύπωση(Εγώ)

Σε αυτόν τον κώδικα, ενώ Εγώ είναι μικρότερο ή ίσο με 5, πολλαπλασιάζεται επί 2 κάθε φορά που εκτελείται ο βρόχος.

A Do…While Loop in Go

Ο βρόχος do...while είναι διαφορετικός από τον βρόχο while καθώς το σώμα του βρόχου θα εκτελεστεί τουλάχιστον μία φορά. Υπάρχουν δύο προσεγγίσεις για την εφαρμογή αυτού στο Go.

  1. Βεβαιωθείτε ότι η συνθήκη για την πρώτη επανάληψη έχει οριστεί σε true.
    i := 10

    Για επόμενο := αληθής; Επόμενο; επόμενο = i <= 5 {
    fmt.Εκτύπωση(Εγώ)
    i++
    }

    // Θα εκτυπώσει 10

    Εφόσον η αρχική συνθήκη έχει οριστεί σε true, Εγώ εκτυπώνεται και στη συνέχεια αυξάνεται στην πρώτη επανάληψη. Δεδομένου ότι η συνθήκη (i <=5) αξιολογείται ως false κατά τη δεύτερη επανάληψη, ο βρόχος εξέρχεται.
  2. Εκτελέστε το σώμα του βρόχου μία φορά πριν ελέγξετε την κατάσταση.
    i := 10

    Για {
    fmt.Εκτύπωση(Εγώ)
    i++

    αν εγώ >= 5 {
    Διακοπή;
    }
    }

    // Θα εκτυπώσει 10

    Στον βρόχο for παραπάνω, το 10, που είναι η τιμή του i τυπώνεται πρώτα και μετά εκτελείται η εντολή if. Εάν η συνθήκη είναι αληθής, ο βρόχος διακόπτεται, διαφορετικά ο βρόχος συνεχίζεται.

Άλλες δηλώσεις ροής ελέγχου

Οι βρόχοι στον προγραμματισμό είναι σημαντικοί επειδή απλοποιούν τις επαναλαμβανόμενες εργασίες και εξοικονομούν χρόνο. Αντί να γράψετε μια γραμμή κώδικα δέκα φορές, μπορείτε απλά να δημιουργήσετε έναν βρόχο που εκτελείται δέκα φορές. Άλλες εντολές ροής ελέγχου είναι οι δηλώσεις if, if...else, if...else if...if και οι εντολές switch.

Τι νέο υπάρχει στην έκδοση 1.18 Go

Διαβάστε Επόμενο

ΜερίδιοΤιτίβισμαΜερίδιοΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ

Σχετικά θέματα

  • Προγραμματισμός
  • Προγραμματισμός

Σχετικά με τον Συγγραφέα

Μαίρη Γαθώνη (Δημοσιεύτηκαν 22 άρθρα)

Η Mary Gathoni είναι μια προγραμματίστρια λογισμικού με πάθος για τη δημιουργία τεχνικού περιεχομένου που δεν είναι μόνο ενημερωτικό αλλά και συναρπαστικό. Όταν δεν κωδικοποιεί ή δεν γράφει, της αρέσει να κάνει παρέα με φίλους και να βρίσκεται σε εξωτερικούς χώρους.

Περισσότερα από τη Μαίρη Γαθώνη

Εγγραφείτε στο ενημερωτικό μας δελτίο

Εγγραφείτε στο ενημερωτικό μας δελτίο για συμβουλές τεχνολογίας, κριτικές, δωρεάν ebook και αποκλειστικές προσφορές!

Κάντε κλικ εδώ για να εγγραφείτε