美文网首页
GO学习 Array

GO学习 Array

作者: 3天时间 | 来源:发表于2022-05-11 15:43 被阅读0次

    基础篇

    package main

    import "fmt"

    func main() {

      /*

      数据类型:

        基本类型:整数,浮点,布尔,字符串

        复合类型:array,slice,map,struct,pointer,function,channel...

      数组:

        1.概念:存储一组相同类型的数据结构

          理解为容器,存储一组数据

        2.语法:

          var 数组名 [长度] 数据类型

          var 数组名 = [长度] 数据类型{元素1,元素2。。。}

          数组名 :=[。。。]数据类型{元素。。。}

        3.通过下标访问

          下标,也叫索引:index

          默认从0开始的整数,直到长度减1

          数组名[index]

            赋值

            取值

          不能越界:[0,长度-1]

        4.长度和容量:go语言的内置函数

          len()

      */

      //step1:创建数组

      var arr1 [4] int

      //step2:数组的访问

      arr1[0] = 1

      arr1[1] = 2

      arr1[2] = 13

      arr1[3] = 41

      fmt.Println(arr1[0])//打印第一个数值

      fmt.Println(arr1[2])//打印第一个数值

      //fmt.Println(arr1[4])//打印第一个数值

      // invalid array index 4 (out of bounds for 4-element array)

      fmt.Println("数组的长度:",len(arr1))//容器中实际存储的数据量

      fmt.Println("数组的容量:",cap(arr1))//容器中能够存储的最大数量

      //因为数组定长,所以长度和容量相同

      arr1[0] = 100

      fmt.Println(arr1[0])

      //数组的其他创建方式

      var a [4] int //同 var a = [4] int

      fmt.Println(a)

      var b =[4]int{1,2,3,4}

      fmt.Println(b)

      var c =[5]int{1,2,3}

      fmt.Println(c)

      var d = [5]int{1:2,3:4}

      fmt.Println(d)

      var e = [5]string{"rose","王二狗","ruby"}

      fmt.Println(e)

      f := [...]int{1,2,3,4}

      fmt.Println(f)

      fmt.Println(len(f))

      g :=[...]int{1:3,3:4}

      fmt.Println(g)

      fmt.Println(len(g))

    }

    运行输出:

    1

    13

    数组的长度:4

    数组的容量:4

    100

    [0 0 0 0]

    [1 2 3 4]

    [1 2 3 0 0]

    [0 2 0 4 0]

    [rose 王二狗 ruby  ]

    [1 2 3 4]

    4

    [0 3 0 4]

    4

    Process finished with exit code 0

    遍历数组:

    package main

    import "fmt"

    func main() {

      /*

      数组的遍历:

        一次访问数组中的元素

        方法一:arr[0],arr[1],arr[2]...

        方法二:通过循环,配合下标

          for i:=0;i<len(arr);i++{

            arr[i]

          }

        方法三:使用range

          range,词义“范围”

          不需要操作数组的下标,到达数据的末尾,自动结束for range循环。

      */

      arr1 := [5]int{1,2,3,4,5}

      fmt.Println(arr1[0])

      fmt.Println(arr1[1])

      fmt.Println(arr1[2])

      fmt.Println(arr1[3])

      fmt.Println(arr1[4])

      fmt.Println("____________________________")

      for i :=0;i<len(arr1);i++{

        fmt.Println(arr1[i])

      }

      fmt.Println("_____________________________")

      for index,value := range arr1{

        fmt.Printf("下标是:%d,数值是:%d,\n",index,value)

      }

    }

    运行输出:

    1

    2

    3

    4

    5

    ____________________________

    1

    2

    3

    4

    5

    _____________________________

    下标是:0,数值是:1,

    下标是:1,数值是:2,

    下标是:2,数值是:3,

    下标是:3,数值是:4,

    下标是:4,数值是:5,

    Process finished with exit code 0

    读完点个赞,给我的坚持更新注入新的活力。

    2022.05.11日更67/365 天

    公众号:3天时间

    往期同类文章:

    GO学习 goto语句和随机函数

    GO学习 for循环练习

    GO学习 多重for循环

    GO学习 for循环

    相关文章

      网友评论

          本文标题:GO学习 Array

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