4
Golang:3.1、Golang 数组
source link: https://blog.51cto.com/mouday/5766995
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Golang:3.1、Golang 数组
精选 原创数组:相同数据类型的一组数据的集合
- 数组长度不能修改
- 数组可以通过下标(索引)访问元素
- 数组默认初始化为零值
var variable_name [SIZE] variable_type
package main
import "fmt"
func main() {
var arr1 [2]string
var arr2 [3]int
fmt.Printf("arr1: %v\n", arr1) // arr1: [ ]
fmt.Printf("arr1: %T\n", arr1) // arr1: [2]string
fmt.Printf("arr2: %v\n", arr2) // arr2: [0 0 0]
fmt.Printf("arr2: %T\n", arr2) // arr2: [3]int
}
package main
import "fmt"
func main() {
var arr1 = [2]string{"Tom", "Jack"}
var arr2 = [3]int{1, 2, 3}
var arr3 = [2]bool{true, false}
fmt.Printf("arr1: %v\n", arr1)
// arr1: [Tom Jack]
fmt.Printf("arr2: %v\n", arr2)
// arr2: [1 2 3]
fmt.Printf("arr3: %v\n", arr3)
// arr3: [true false]
}
可以省略长度
var arr1 = [...]int{1, 2, 3}
// 等价于
// var arr1 = [3]int{1, 2, 3}
fmt.Printf("len: %v\n", len(arr1))
// len: 3
指定索引值
package main
import "fmt"
func main() {
// 未指定的值初始化为零值
var arr1 = [...]int{0: 1, 2: 3}
fmt.Printf("arr1: %v\n", arr1)
// arr1: [1 0 3]
}
访问数组元素
package main
import "fmt"
func main() {
var arr1 [3]int
fmt.Printf("arr1: %v\n", arr1)
// arr1: [0 0 0]
// 赋值
arr1[0] = 1
arr1[2] = 2
fmt.Printf("arr1: %v\n", arr1)
// arr1: [1 0 2]
// 取值
fmt.Printf("arr1[0]: %v\n", arr1[0])
// arr1[0]: 1
// 获取数组长度
fmt.Printf("len(arr1): %v\n", len(arr1))
// len(arr1): 3
// 数组长度越界
fmt.Printf("arr1[0]: %v\n", arr1[3])
// invalid argument: index 3 out of bounds [0:3]
}
方式一:for
package main
import "fmt"
func main() {
var arr = [...]int{100, 200, 300}
// 快捷键for + tab
for i := 0; i < len(arr); i++ {
fmt.Printf("arr[%v]=%v\n", i, arr[i])
}
// arr[0]=100
// arr[1]=200
// arr[2]=300
}
方式二:for…range
package main
import "fmt"
func main() {
var arr = [...]int{100, 200, 300}
// 快捷键forr + tab
// 索引, 值
for index, value := range arr {
fmt.Printf("arr[%v]=%v\n", index, value)
}
// arr[0]=100
// arr[1]=200
// arr[2]=300
}
- 打赏
- 赞
- 收藏
- 4评论
- 分享
- 举报
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK