Golang的语法糖

freelang · · 170 次点击 · · 开始浏览    

Golang的语法糖

...

Go语言函数中有三个点 ... 表示为可变参数,这是Go的糖衣语法,表示可以接受任意个数但相同类型的参数。


func print(values...string) { //可以接受任意个string参数

    for _, v:= range values{

        fmt.Println("---> ",v)

    }

}



func main(){

   values := []string{"abc",  "def",  "hig",  "klm",}

   print(values...) 

}

:=

:= 是Go的赋值与声明语法糖,它的功能是声明、赋值和类型推断。


//第一种方法

var number1  number2  number3 int


number1, number2, number3 = 1, 2, 3 
//第二种方法

var number1, number2, number3 = 1, 2, 3 
//第三种方法
number1, number2, number3 := 1, 2, 3

  • := 只有在左侧有未定义变量时才能使用(有定义的变量也可以)
  • := 只进行语义上的检查,循环内也可以使用,第一次之后的效果和=相同
  • := 和 = 都要求左右的值和变量一一对应,不会截断
  • 特殊情况,map、chan、类型推定可以返回一个值,也可以是两个值
  • 当map中该键不存在时,总是返回零值和false,否则后者返回true
  • 当chan关闭以后,总是返回零值和false,否则后者返回true

本文来自:简书

感谢作者:freelang

查看原文:Golang的语法糖

170 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传