Maison  >  Article  >  développement back-end  >  Comment parcourir des tranches dans Golang

Comment parcourir des tranches dans Golang

PHPz
PHPzoriginal
2023-05-13 11:17:371874parcourir

Dans Golang, slice est l'un des types de données couramment utilisés, qui contient une série d'éléments du même type. Nous devons souvent parcourir ces éléments. Il existe de nombreuses façons de parcourir les tranches, et ce qui suit présente quelques méthodes couramment utilisées.

  1. for parcours de boucle

La méthode la plus courante consiste à utiliser une boucle for pour parcourir les tranches. Le code est le suivant :

package main

import "fmt"

func main() {
    slice := []int{1, 2, 3, 4, 5}
    for i := 0; i < len(slice); i++ {
        fmt.Println(slice[i])
    }
}

Dans le code ci-dessus, créez d'abord une tranche entière et attribuez-lui une valeur initiale. Utilisez ensuite une boucle for pour parcourir la tranche, en utilisant i comme index, parcourez du premier élément au dernier élément de la tranche et imprimez la valeur de chaque élément via la fonction fmt.Println().

Le résultat de sortie à ce moment est :

1
2
3
4
5
  1. for range loop traversal

for range loop est une autre méthode courante de parcours de tranches. Il peut facilement parcourir chaque élément de la tranche et obtenir l'index et la valeur de l'élément. Le code est le suivant :

package main

import "fmt"

func main() {
    slice := []string{"apple", "banana", "orange", "grape"}
    for index, value := range slice {
        fmt.Printf("Index: %d, Value: %s
", index, value)
    }
}

Dans le code ci-dessus, une tranche de chaîne est créée et une valeur initiale lui est attribuée. Utilisez une boucle for range pour parcourir la tranche, pour chaque élément, obtenez son index et sa valeur, et utilisez la fonction Printf pour formater la sortie.

Le résultat de sortie est :

Index: 0, Value: apple
Index: 1, Value: banana
Index: 2, Value: orange
Index: 3, Value: grape
  1. Utilisez le mot-clé range pour parcourir

En plus de la boucle for range, vous pouvez également utiliser le mot-clé range pour parcourir la tranche. Cette méthode peut simplifier le code et peut également parcourir. l'indice et la somme des éléments. Le code est le suivant :

package main

import "fmt"

func main() {
    slice := []float64{1.5, 2.5, 3.5, 4.5, 5.5}
    for _, value := range slice {
        fmt.Println(value)
    }
}

Dans le code ci-dessus, créez une tranche à virgule flottante et attribuez-lui une valeur initiale. Utilisez le mot-clé range pour parcourir la tranche et obtenir la valeur de l'élément dans chaque boucle. Cette méthode utilise une variable anonyme comme valeur d'index. Nous n'avons pas besoin d'utiliser la valeur d'index lors du parcours et pouvons utiliser un trait de soulignement (_) à la place.

Le résultat de sortie est :

1.5
2.5
3.5
4.5
5.5
  1. Utiliser la traversée de fonction

Vous pouvez également utiliser des fonctions pour parcourir des tranches. Par exemple, nous pouvons utiliser range et une fonction f pour parcourir une tranche :

package main

import "fmt"

func main() {
    slice := []int{1, 2, 3, 4, 5}
    f := func(v int) {
        fmt.Println(v)
    }
    for _, v := range slice {
        f(v)
    }
}

Dans le code ci-dessus, définissez une fonction f qui accepte un paramètre entier et est utilisée pour afficher chaque élément de la tranche entière. Utilisez ensuite une boucle for range pour parcourir la tranche. Pour chaque élément, appelez la fonction f et transmettez sa valeur. La fonction f affichera la valeur de l'élément.

Le résultat de sortie est :

1
2
3
4
5

Résumé :

Il existe plusieurs méthodes de parcours ci-dessus dans Golang. Parmi elles, la boucle for et la boucle for range sont les plus couramment utilisées, mais le choix de différentes méthodes de parcours dans différents scénarios peut faire. le code plus concis. Facile à lire et efficace.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn