選單
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Go 函式返回值


返回值

如果你希望函式返回一個值,你需要定義返回值的**資料型別**(例如 `int`, `string` 等),並在函式內部使用 **return 關鍵字**。

語法

func FunctionName(param1 type, param2 type) type {
  // 要執行的程式碼
  return output
}

函式返回值示例

示例

在這裡,myFunction() 接收兩個整數(xy)並將它們的和(x + y)作為整數(int)返回。

package main
import ("fmt")

func myFunction(x int, y int) int {
  return x + y
}

func main() {
  fmt.Println(myFunction(1, 2))
}

結果

3
自己動手試一試 »

命名返回值

在 Go 中,你可以為函式的返回值命名。

示例

在這裡,我們將返回值命名為 result(型別為 int),並使用裸返回( naked return )返回該值(意味著我們使用 return 語句而不指定變數名)。

package main
import ("fmt")

func myFunction(x int, y int) (result int) {
  result = x + y
  return
}

func main() {
  fmt.Println(myFunction(1, 2))
}

結果

3
自己動手試一試 »

上面的示例也可以這樣寫。在這裡,return 語句指定了變數名。

示例

package main
import ("fmt")

func myFunction(x int, y int) (result int) {
  result = x + y
  return result
}

func main() {
  fmt.Println(myFunction(1, 2))
}


將返回值儲存在變數中

你也可以像這樣將返回值儲存在變數中:

示例

在這裡,我們將返回值儲存在一個名為 total 的變數中。

package main
import ("fmt")

func myFunction(x int, y int) (result int) {
  result = x + y
  return
}

func main() {
  total := myFunction(1, 2)
  fmt.Println(total)
}
自己動手試一試 »

多返回值

Go 函式還可以返回多個值。

示例

在這裡,myFunction() 返回一個整數(result)和一個字串(txt1)。

package main
import ("fmt")

func myFunction(x int, y string) (result int, txt1 string) {
  result = x + x
  txt1 = y + " World!"
  return
}

func main() {
  fmt.Println(myFunction(5, "Hello"))
}

結果

10 Hello World!
自己動手試一試 »

示例

在這裡,我們將兩個返回值儲存到兩個變數(ab)中。

package main
import ("fmt")

func myFunction(x int, y string) (result int, txt1 string) {
  result = x + x
  txt1 = y + " World!"
  return
}

func main() {
  a, b := myFunction(5, "Hello")
  fmt.Println(a, b)
}

結果

10 Hello World!
自己動手試一試 »

如果(出於某種原因)我們不想使用某些返回值,我們可以新增一個下劃線(_)來忽略該值。

示例

在這裡,我們想忽略第一個返回值(result - 儲存在變數 a 中)。

package main
import ("fmt")

func myFunction(x int, y string) (result int, txt1 string) {
  result = x + x
  txt1 = y + " World!"
  return
}

func main() {
   _, b := myFunction(5, "Hello")
  fmt.Println(b)
}

結果

Hello World!
自己動手試一試 »

示例

在這裡,我們想忽略第二個返回值(txt1 - 儲存在變數 b 中)。

package main
import ("fmt")

func myFunction(x int, y string) (result int, txt1 string) {
  result = x + x
  txt1 = y + " World!"
  return
}

func main() {
   a, _ := myFunction(5, "Hello")
  fmt.Println(a)
}

結果

10
自己動手試一試 »

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援