go语言 – 数组声明

数组的类型可以表示为[n]Tn表示数组中元素的数量,T表示每个元素的类型。元素的数量n也是类型的一部分(稍后我们将对此进行更详细的讨论)。

声明数组有不同的方法。让我们一个一个地看。

package main

import (  
    "fmt"
)


func main() {  
    var a [3]int //长度为3的整数数组
    fmt.Println(a)
}

var a [3]int声明一个长度为3的整数数组。数组中的所有元素都自动赋值为所属类型的零值。此处,a是一个整数数组,因此a的所有元素都赋值为0,即int的0值,运行上面的程序将输出[0 0 0]

数组的索引从0开始,以数组长度 - 1结束。让我们为上面的数组分配一些值。

package main

import (  
    "fmt"
)


func main() {  
    var a [3]int //长度为3的整数数组
    a[0] = 12 // 数组索引从0开始
    a[1] = 78
    a[2] = 50
    fmt.Println(a)
}

a[0] 是数组第一个元素,以此类推。程序将输出[12 78 50]

让我们用更简短的声明来创建相同的数组。

package main 

import (  
    "fmt"
)

func main() {  
    a := [3]int{12, 78, 50} // 创建数组的简短声明
    fmt.Println(a)
}

上面的程序将有同样输出:[12 78 50]

在简短声明期间,不必为数组中的所有元素赋值。

package main

import (  
    "fmt"
)

func main() {  
    a := [3]int{12} 
    fmt.Println(a)
}

在上面的程序中,代码行a := [3]int{12}声明了一个长度为3的数组,但是只提供了一个值12。其余2个元素自动赋值为0。程序将输出[12 0 0]

你甚至可以省略声明中的数组长度,并将其替换为,让编译器帮你确认长度。

package main

import (  
    "fmt"
)

func main() {  
    a := [...]int{12, 78, 50} // ... 让编译器决定长度
    fmt.Println(a)
}


浙ICP备17015664号-1 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载