go 数组
来源:原创
时间:2019-03-02
作者:脚本小站
分类:GoLang
package main import "fmt" func main() { var id [50]int // 给数组赋值 for i := 0; i < len(id); i++ { id[i] = i fmt.Printf("id[%d] = %d\n", i, id[i]) } }
package main import "fmt" func main() { var a [10]int var b [5]int fmt.Printf("len(a) = %d ,len(b) = %d", len(a), len(b)) for i := 0; i < len(a); i++ { a[i] = i } for i, data := range a { fmt.Printf("a[%d] = %d\n", i, data) } }
数组初始化赋值:
package main import "fmt" func main() { var a [5]int = [5]int{1, 2, 3, 4, 5} fmt.Println("a = ", a) b := [5]int{1, 2, 3, 4, 5} fmt.Println("b = ", b) c := [5]int{1, 2, 3} fmt.Println("c = ", c) d := [5]int{2: 10, 3: 12} fmt.Println("d = ", d) }
二维数组赋值:
package main import "fmt" func main() { var a [3][4]int k := 0 for i := 0; i < 3; i++ { for j := 0; j < 4; j++ { a[i][j] = k k++ } } fmt.Println(a) b := [3][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}} fmt.Println(b) c := [3][4]int{{1, 2}, {5, 6}, {9, 10, 11, 12}} fmt.Println(c) d := [3][4]int{2: {9, 10, 11, 12}} // 只对第三个子数组赋值 fmt.Println(d) }
数组比较与赋值:
package main import "fmt" func main() { a := [5]int{1, 2, 3, 4, 5} b := [5]int{1, 2, 3, 4, 5} c := [5]int{1, 2, 3} fmt.Println("a == b", a == b) fmt.Println("a == c", a == c) c = a fmt.Println(c) }
数组做函数参数:
package main import "fmt" func modify(a [5]int) { a[3] = 666 fmt.Println("a = ", a) } func main() { a := [5]int{1, 2, 3, 4, 5} modify(a) fmt.Println("a = ", a) }