Heim >Backend-Entwicklung >Golang >Kann eine Golang-Funktion mehrere Werte zurückgeben?

Kann eine Golang-Funktion mehrere Werte zurückgeben?

PHPz
PHPzOriginal
2024-04-13 14:42:01874Durchsuche

Ja, Go-Funktionen können mehrere Werte zurückgeben, indem sie ein Tupel zurückgeben. Dabei handelt es sich um einen unveränderlichen Wert, der verschiedene Datentypen enthalten kann.

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

Kann eine Go-Funktion mehrere Werte zurückgeben?

Go-Funktionen können mehrere Werte zurückgeben, indem sie ein Tupel zurückgeben. Ein Tupel ist ein unveränderlicher Wert, der verschiedene Datentypen enthalten kann.

Syntax:

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

Beispiel:

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
}

Lassen Sie uns anhand eines praktischen Falls demonstrieren, wie eine Funktion verwendet wird, die mehrere Werte zurückgibt:

Fall: Finden Sie den Maximal- und Minimalwert in einem Array

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)
}

Ausgabe:

Minimum: 1
Maximum: 5

In diesem Fall gibt die Funktion getMinMax ein Tupel zurück, das die minimalen und maximalen Werte im Array enthält. Die Hauptfunktion ruft dann den zurückgegebenen Wert ab, indem sie das Tupel entpackt.

Das obige ist der detaillierte Inhalt vonKann eine Golang-Funktion mehrere Werte zurückgeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn