操作系統(tǒng):centos8;golang版本:1.17.4
1、函數(shù)聲明
函數(shù)聲明通用語法如下:
func functionname(parametername1 type, parametername2 type) returntype {
// 函數(shù)體(具體實(shí)現(xiàn)的功能)
}
函數(shù)中的參數(shù)列表和返回值并非是必須的,例如:
func functionname() {
// 這個函數(shù)不需要輸入?yún)?shù),也沒有返回值
}
2、多返回值
golang支持一個函數(shù)可以有多個返回值,例如:
package main
import (
"fmt"
)
func rectProps(length, width float64) (float64, float64) {
var area = length * width //求面積
var perimeter = (length + width) * 2 //求周長
return area, perimeter
}
func main() {
area, perimeter := rectProps(6.6, 8.8)
fmt.Printf("Area %f Perimeter %f", area, perimeter)
}
3、命名返回值
從函數(shù)中可以返回一個命名值。一旦命名了返回值,可以認(rèn)為這些值在函數(shù)第一行就被聲明為變量了。
上面的rectProps函數(shù)可以寫成:
func rectProps(length, width float64) (area, perimeter float64) {
area = length * width
perimeter = (length + width) * 2
return // 不需要明確指定返回值,默認(rèn)返回 area, perimeter 的值
}
4、空白符
空白符 _ 可以用作表示任何類型的任何值。
因?yàn)間o中定義的變量都要被使用,否則會報錯。當(dāng)我們不需要使用某個變量時,就可以用空白符 _ 來表示。例如:
func main() {
area, _ := rectProps(6.6, 8.8) // 返回值周長被丟棄
fmt.Printf("Area %f ", area)
}