golang 数组和切片初始化方式

Tim_SSS · · 10774 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

一、数组初始化方式

  • var [length]Type
var array [5]int //这种方式,只是初始化,不带初始化值,数组长度,已经定义好, 但是其实初始化的值,已经有了并且是该类型的最小值(bool false),int 0, string ' ' 其他,自行验证
  • var [N]Type{value1, value2, ... , valueN}
var array  = [5]int{1, 2, 3, 4, 5}  // 这种方式,既初始化变量,又带了初始化值,数组长度已经定义好
  • var [...]Type{value1, value2, ... , valueN}
var array  = [...]int{1, 2, 3, 4, 5} // 这种方式,既初始化变量,也是带了初始值,数组长度,根据初始值的个数而定,也就是五个
  • :=[N]Type{value1, value2, ... , valueN}
array :=[5]int{1, 2, 3, 4, 5} // 这种方式,省去 var 关键词,将初始化变量和赋值,放在一起操作,这种方式简单,明了。
  • := [...]Type{value1, value2, ... , valueN}
array := [...]int{1, 2, 3, 4, 5} // 这种方式,既初始化变量,也是带了初始值,数组长度,根据初始值的个数而定,也就是五个

二、切片初始化方式

  • make ( []Type ,length, capacity )
slice := make([]int, 3, 5) 
  • make ( []Type, length)
slice := make([]int, 5)
  • []Type{}
slice := []int{}
  • []Type{value1 , value2 , ... , valueN }
slice := []int{1, 2, 3, 4, 5} // 这种方式,len是根据初始化长度而定的

本文来自:简书

感谢作者:Tim_SSS

查看原文:golang 数组和切片初始化方式

入群交流(和以上内容无关):Go中文网 QQ 交流群:798786647 或加微信入微信群:274768166 备注:入群;关注公众号:Go语言中文网

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