首頁  >  文章  >  後端開發  >  Golang 函數可以傳回多個值嗎?

Golang 函數可以傳回多個值嗎?

PHPz
PHPz原創
2024-04-13 14:42:01746瀏覽

是的,Go 函數可以透過傳回一個元組來傳回多個值,元組是一種不可變的值,可以包含不同類型的資料。

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

Go 函數可以傳回多個值嗎?

Go 函數可以透過傳回一個元組來傳回多個值。元組是一種不可變的值,可以包含不同類型的資料。

語法:

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

實例:

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
}

讓我們透過一個實戰案例來示範如何使用傳回多個值的函數:

案例:找出陣列中的最大值和最小值

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

輸出:

Minimum: 1
Maximum: 5

在這個案例中, getMinMax 函數傳回一個元組,包含數組中的最小值和最大值。然後,主函數透過解包元組來取得傳回的值。

以上是Golang 函數可以傳回多個值嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn