美文网首页
数组和切片

数组和切片

作者: 荒古遗尘狗贼 | 来源:发表于2019-07-27 22:22 被阅读0次

    数组和切片的区别

    //数组,需要固定长度的

    a=[5]int

    //切片是不需要固定长度的

    b=[]int

    package main

    import "fmt"

    func main(){

    //基本属性

      arra:=[...]int{1,2,3,0,0}

    a:=arra[0:3:5]

    //从0开始取3-0个

      fmt.Println("a=",a)

    fmt.Println("len(a)=",len(a))

    fmt.Println("cap(a)=",cap(a))

    //切片和数组的区别

    //数组在定义时需要固定长度,长度不可以改变

      shuzu:=[5]int{}

    fmt.Printf("shuzu len is %v\t shuzu cap is %v\n",len(shuzu),cap(shuzu))

    //切片在定义的时候不需要固定长度,长度和容量可以改变

      qiepian:=[]int{}

    fmt.Printf("shuzu len is %v\t shuzu cap is %v\n",len(qiepian),cap(qiepian))

    //通过append函数可以改变切片的长度

      qiepian=append(qiepian,11)

    fmt.Printf("shuzu len is %v\t shuzu cap is %v\n",len(qiepian),cap(qiepian))

    //定义切片的方法

    //自动推到格式

      s1:=[]int{}

    fmt.Println(s1)

    //利用make函数 make(类型、长度、容量)

      s2:=make([]int,3,4)

    fmt.Println(s2)

    //make可以不指定容量,默认跟长度相等

      s3:=make([]int,3)

    fmt.Println(s3)

    //切片的截取

      t:=arra[1]

    fmt.Println(t)

    s:=arra[:2]

    fmt.Println(s)

    q:=arra[1:]

    fmt.Println(q)

    w:=arra[2:3]

    fmt.Println(w)

    e:=arra[0:2:3]

    fmt.Println(e)

    fmt.Printf("e len is %v \t\t e cap is %v\n",len(e),cap(e))

    }

    相关文章

      网友评论

          本文标题:数组和切片

          本文链接:https://www.haomeiwen.com/subject/iadyrctx.html