Go语言学习笔记-函数部分(三)

函数部分

  1. 函数基本组成:关键字func、函数名、参数列表、返回值、函数体、返回语句

    例子:
    func Add(int a, int b) (return int, err error){ ....函数体... }

    如果相邻参数类型相同,可以简写,eg: a,b int //a、b参数类型相同

  2. 函数调用:

    使用方式:首先导入该函数所在的包,再直接通过点号‘.’来使用

    例子:

    import "mymath" //导入函数所在包

    c:= mymath.Add(1, 2) //使用格式

    注意:小写字母开头的函数只能在本包中使用(只在本包可见),大写字母开头的函数才能被其他包使用

  3. 不定参数:

    • 指的是传入的参数个数不定数量

    • 用法:函数参数用 “...类型”指定

    • 例如:

        func myfun(args ...int){
        	for _, arg := range args {
        		fmt.PrintLn(arg)
        	}
        } 
      
    • 任意类型的不定参数:

      • 参数类型用:interface{}
      • 例如:
        • func Printf(format string, args ...interface{}){ //参数类型为interface{}表示任意类型都可以传进来

          }

  4. 代码实例:

   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)
   }
posted @ 2018-11-19 13:01  alisleepy  阅读(94)  评论(0编辑  收藏  举报