Maison  >  Article  >  développement back-end  >  Une fonction Golang peut-elle renvoyer plusieurs valeurs ?

Une fonction Golang peut-elle renvoyer plusieurs valeurs ?

PHPz
PHPzoriginal
2024-04-13 14:42:01696parcourir

Oui, les fonctions Go peuvent renvoyer plusieurs valeurs en renvoyant un tuple, qui est une valeur immuable pouvant contenir différents types de données.

Golang 函数可以返回多个值吗?

Une fonction Go peut-elle renvoyer plusieurs valeurs ?

Les fonctions Go peuvent renvoyer plusieurs valeurs en renvoyant un tuple. Un tuple est une valeur immuable qui peut contenir différents types de données.

Syntaxe :

func functionName() (returnType1, returnType2, ..., returnTypeN) {
  // ...
  return value1, value2, ..., valueN
}

Exemple :

func getMinMax(numbers []int) (int, int) {
  min := numbers[0]
  max := numbers[0]
  for _, n := range numbers {
    if n < min {
      min = n
    }
    if n > max {
      max = n
    }
  }
  return min, max
}

Montrons comment utiliser une fonction qui renvoie plusieurs valeurs à travers un cas pratique :

Cas : Trouver la valeur maximale et minimale dans un tableau

package main

import "fmt"

func getMinMax(numbers []int) (int, int) {
  min := numbers[0]
  max := numbers[0]
  for _, n := range numbers {
    if n < min {
      min = n
    }
    if n > max {
      max = n
    }
  }
  return min, max
}

func main() {
  numbers := []int{1, 3, 5, 2, 4}
  min, max := getMinMax(numbers)
  fmt.Println("Minimum:", min)
  fmt.Println("Maximum:", max)
}

Sortie :

Minimum: 1
Maximum: 5

Dans ce cas, la fonction getMinMax renvoie un tuple contenant les valeurs minimales et maximales du tableau. La fonction main obtient ensuite la valeur renvoyée en décompressant le tuple.

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