数据的声明:
package main
import "fmt"
func main() {
var a [5] int
a[2] = 10
fmt.Println(a)
}
初始化数组的初始化有多种形式。
package main
import "fmt"
func main() {
var arr = [5]int{1, 2, 3, 4, 5}
fmt.Println(arr)
}
[5] int {1,2,3,4,5}
长度为5的数组,其元素值依次为:1,2,3,4,5。
[5] int {1,2}
长度为 5 的数组,其元素值依次为:1,2,0,0,0 。
在初始化时没有指定初值的元素将会赋值为其元素类型 int 的默认值0,string 的默认值是 “”。
[...] int {1,2,3,4,5}
长度为 5 的数组,其长度是根据初始化时指定的元素个数决定的。
[5] int { 2:1,3:2,4:3}
长度为 5 的数组,key:value,其元素值依次为:0,0,1,2,3。在初始化时指定了 2,3,4 索引中对应的值:1,2,3
[...] int {2:1,4:3}
长度为5的数组,起元素值依次为:0,0,1,0,3。由于指定了最大索引 4 对应的值
3,根据初始化的元素个 数确定其长度为5赋值与使用。
切片的初始化
切片可以通过数组来初始化,也可以通过内置函数 make() 初始化。
初始化时 len=cap,在追加元素时如果容量 cap 不足时将按 len 的 2 倍扩容。
s :=[] int {1,2,3 }
直接初始化切片,[] 表示是切片类型,{1,2,3} 初始化值依次是 1,2,3。其 cap=len=3。
s := arr[:]
初始化切片 s,是数组 arr 的引用。
s := arr[startIndex:endIndex]
将 arr 中从下标 startIndex 到 endIndex-1 下的元素创建为一个新的切片。
s := arr[startIndex:]
缺省 endIndex 时将表示一直到 arr 的最后一个元素。
s := arr[:endIndex]
缺省 startIndex 时将表示从 arr 的第一个元素开始。
s1 := s[startIndex:endIndex]
通过切片 s 初始化切片 s1文章来源:https://www.toymoban.com/news/detail-438674.html
s :=make([]int,len,cap)
通过内置函数 make() 初始化切片 s,[]int 标识为其元素类型为 int 的切片。文章来源地址https://www.toymoban.com/news/detail-438674.html
到了这里,关于go语言数据初始化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!