欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

go 数组、切片

程序员文章站 2022-10-16 13:35:11
数组定义 切片定义 func createSlice() { //方式1 自动推导类型 s1 := []int{1, 2, 3, 4} fmt.Println(s1) //[1 2 3 4] //方式2 make函数 make(type,len,cap) s2 := make([]int, 5, 1 ......
  • 数组定义

 

    
    // 标准
    var a [5]int = [5]int{5, 4, 4, 3, 02}
    fmt.println("a", a)

    // 自动推导类型
    b := [5]int{5, 4, 2, 3, 2}
    fmt.println("b", b)

    // 其他默认为0
    c := [5]int{3, 5}
    fmt.println("c", c)

    // 指定部分下标值
    d := [5]int{2: 10, 4: 9}
    fmt.println("d", d)

    //a [5 4 4 3 2]
    //b [5 4 2 3 2]
    //c [3 5 0 0 0]
    //d [0 0 10 0 9]

 

  • 切片定义
  • func createslice() {
        //方式1 自动推导类型
        s1 := []int{1, 2, 3, 4}
        fmt.println(s1)
        //[1 2 3 4]
    
        //方式2  make函数  make(type,len,cap)
        s2 := make([]int, 5, 10)
        fmt.println("s2=====", s2)
        fmt.println("len(s)=", len(s2))
        fmt.println("cap(s)=", cap(s2))
        //s2===== [0 0 0 0 0]
        //len(s)= 5
        //cap(s)= 10
    
        // 不写cap,则cap=len
        s3 := make([]int, 5)
        fmt.println("s2=====", s3)
        fmt.println("len(s)=", len(s3))
        fmt.println("cap(s)=", cap(s3))
        //s2===== [0 0 0 0 0]
        //len(s)= 5
        //cap(s)= 5
    }