Go語言基礎之函數返回值
Go語言中通過return
關鍵字向外輸出返回值。
一、函數返回值
func calc(x, y int) int {
sum := x + y
return sum
}
二、多返回值
Go語言中函數支持多返回值,函數如果有多個返回值時必須用()
將所有返回值包裹起來。
舉個例子:
func calc(x, y int) (int, int) {
sum := x + y
sub := x - y
return sum, sub
}
三、返回值命名
函數定義時可以給返回值命名,一旦命名了返回值,可以認為這些值在函數第一行就被聲明,並在函數體中直接使用這些變量(無需定義),最后通過return
關鍵字返回。
返回值命名
func calc(x, y int) (sum, sub int) {
sum = x + y
sub = x - y
return
}
當我們的一個函數返回值類型為slice時,nil可以看做是一個有效的slice,沒必要顯示返回一個長度為0的切片。
func someFunc(x string) []int {
if x == "" {
return nil // 沒必要返回[]int{}
}
...
}
四、總結
- return返回值的作用,在函數體內經過一系類運算之后需要將結果給外部進行再一次的處理,所以要將計算的結果進行返回
- 一個函數體中可以出現多個return,一旦執行到return函數就會終止執行,下面函數體代碼將不會在執行
- 返回值命名,無需return后面跟返回值變量名稱
- return作用
- 可以終止函數的執行;
- 可以返回任意數據類型,獲取函數體返回數據進行進一步的處理運算;
- 函數有一個返回值,則返回其本身;
- 函數體返回多個值,則以多個值的形式返回;