golang学习(八):数组
程序员文章站
2022-07-15 08:18:30
...
简介
数组是一些类型相同的元素的集合,它是一段固定长度的连续内存区域,数组大小不可以变化。
数组的声明
var 数组变量名 [元素数量] T
说明:
T可以是任意基本类型。当类型为数组本身时,实现多维数组。
案例如下:
package main
import "fmt"
func main() {
//声明含3个元素的数组
var student [3]string
//赋值
student[0] = "fang"
student[1] = "wu"
student[2] = "chen"
fmt.Println(student)
}
运行结果如下:
说明:student [0] 表示数组中的第一个元素。
初始化数组
基本语法:
var student = [3]string{"a", "b", "c"}
案例:
package main
import "fmt"
func main() {
//使用速记声明创建含3个元素的数组
var student = [3]string{"a", "b", "c"}
fmt.Println(student)
}
运行如下:
这种声明方式也可以不用为数组中的每一个元素指定初始值,如:
package main
import "fmt"
func main() {
//只提供一个初值"a"
var student = [3]string{"a"}
fmt.Println(student)
}
运行结果如下:
说明:
这样的写法需要保证大括号后面的元素数量与数组的大小一致。当然,这个过程也可以交给编译器,需要在 [ ] 中添加...表示推测,如:
package main
import "fmt"
func main() {
//[...]让编译器根据元素个数确定数组大小
var student = [...]string{"a"}
fmt.Println(student)
}
运行结果如下:
另外,Go语言内置函数len可以返回数组中的元素个数,如:
package main
import "fmt"
func main() {
var student = [3]string{"a", "b", "c"}
//打印数组中元素的个数
fmt.Println(len(student))
}
运行结果如下:
遍历数组
介绍:遍历数组即访问每一个数组元素。
案例如下:
package main
import "fmt"
func main() {
var student = [3]string{"a", "b", "c"}
fmt.Println(student)
//使用for循环遍历student数组,k为索引,v为值
for k , v := range student {
fmt.Println(k, v)
}
}
运行结果如下:
说明:
使用for循环遍历student数组,k为索引,v为值。可以通过空标识符来代替索引变量,如下:
package main
import "fmt"
func main() {
var student = [3]string{"a", "b", "c"}
fmt.Println(student)
//使用for循环遍历student数组,k为索引,v为值
for _ , v := range student {
fmt.Println( v)
}
}
运行结果:
总结
数组的大小是不可变化的,没有办法动态增加数组的长度。但是在Go语言中的切片却没有这个限制,后续学习切片再独立成章。
以上就是学习数组的内容,在学习的过程中欢迎大家指正补充,感谢阅读。