领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

GO学习 Array golang os.args

nixiaole 2024-11-10 12:31:22 知识剖析 22 ℃

基础篇

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循环

Tags:

最近发表
标签列表