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)
}