19_Go基础,array

package main

import (
    "fmt"
)

func main() {
    // 初始化方式1
    var a1 = [3]bool{}
    fmt.Println(a1)

    // 初始化方式2
    a2 := [...]int{1, 2, 3}
    fmt.Println(a2)

    // 初始化方式3
    a3 := [5]int{0: 100, 4: 99}
    fmt.Println(a3)

    // 遍历 for range
    for i := 0; i < len(a3); i++ {
        fmt.Println(a3[i])
    }

    // 多维数组 只支持第一层用 ...
    a4 := [...][2]int{
        {1, 2},
        {3, 4},
        {5, 6},
    }
    for _, v1 := range a4 {
        for _, v2 := range v1 {
            fmt.Println(v1, v2)
        }
    }

    // 拷贝
    a5 := a2
    a5[0] = 10
    fmt.Println(a5, a2) // [10 2 3] [1 2 3]
}