/* 格式: func function_name( [parameter list] ) [return_types]{ 函數體 } func:func聲明 function_name:函數名稱 [parameter list]:參數列表 return_types:返回類型,不須要返回值的,return_types能夠不寫。 函數體:函數體 */ package main import ( "fmt" ) func main() { //定義局部變量 var a int = 55555 var b int = 66666 var result int //調用函數 (a和b實參) result = max(a, b) //調用函數 c, d := exchange("gxm", "saili") fmt.Println(c, d) fmt.Printf( "最大值是 : %d\n", result ) } //函數定義,返回一個值(a和b形參) func max(a, b int) int { //定義局部變量 var maxnum int if (a > b){ maxnum = a } else { maxnum = b } return maxnum } func exchange(c, d string) (string, string) { return d, c } /* 一、函數參數傳遞類型有值傳遞 和 引用傳遞 二、函數做爲值 getSquareRoot := func(x float64) float64 { return math.Sqrt(x) } 三、函數閉包 四、函數方法 */