Go語言學習筆記-函數部分(三)
阿新 • • 發佈:2018-11-19
個數 pri 用法 err 筆記 註意 語言 pac println
函數部分
函數基本組成:關鍵字func、函數名、參數列表、返回值、函數體、返回語句
例子:
func Add(int a, int b) (return int, err error){ ....函數體... }
如果相鄰參數類型相同,可以簡寫,eg: a,b int //a、b參數類型相同
函數調用:
使用方式:首先導入該函數所在的包,再直接通過點號‘.’來使用
例子:
import "mymath" //導入函數所在包
c:= mymath.Add(1, 2) //使用格式
註意:小寫字母開頭的函數只能在本包中使用(只在本包可見),大寫字母開頭的函數才能被其他包使用
- 不定參數:
- 指的是傳入的參數個數不定數量
- 用法:函數參數用 “...類型”指定
例如:
func myfun(args ...int){ for _, arg := range args { fmt.PrintLn(arg) } }
- 任意類型的不定參數:
- 參數類型用:interface{}
- 例如:
func Printf(format string, args ...interface{}){ //參數類型為interface{}表示任意類型都可以傳進來
}
代碼實例:
package main import "fmt" func MyPrintf(args ...interface{}){ //不定參數的函數 for _, arg := range args{ switch arg.(type) { //arg的數據類型 case int: fmt.Println(arg, "is an int value") case int64: fmt.Println(arg, "is an int64 value") case string: fmt.Println(arg, "is an string value") case float32: fmt.Println(arg, "is an float32 value") } } } func main(){ var v1 int = 1 var v2 int64 = 234 var v3 string = "hello" var v4 float32 = 1.234 MyPrintf(v1, v2, v3, v4) }
Go語言學習筆記-函數部分(三)