一、数组概念

go语言提供了数组类型的数据结构

数组是具有 [唯一类型] 的一组 [固定长度] 的数据项序列,这种类型可以是任意类型

二、数组声明

var variable_name [SIZE]variable_type

如:
var nums [10]int

三、初始化数组

数组在声明阶段,就已经赋予初始值了

在go 语言中数组是值类型,所以声明后便自动赋予初始值.
关于数组的初始值 和数组的数据类型有关
如下
//因为声明的是int类型的数组,所以初始值是0
var nums [5]int
fmt.Println(nums)
// 结果:[0 0 0 0 0]

四、数组的使用

  • for-range
package main

import "fmt"

func main(){
var hosts [5]string
// 数组元素的赋值
hosts = [5]string{"192.168.0.1","192.168.0.2","192.168.0.3","192.168.0.4","192.168.0.5"}
fmt.Println(hosts[1]) // 取下标为1 的元素,即第2个(因为数组下标从0开始) // for-range 取的是每一个元素
for index,v := range hosts{
fmt.Printf("hosts[%d]=%s\n",index,v)
}
}
  • 不确定元素数组
package main

import "fmt"

func main(){
var nums = [...]int{1,2,3,4,5} // 我们在不具体计算数组个数时,可以使用... 代替,届时go编辑器会计算数组个数,并声明是多少元素的数组
// var nums = [5]int{1,2,3,4,5} //与上面相同,只是数量个数由go编辑器计算了 fmt.Println(nums)
}
  • 数组的改与求和
package main

import "fmt"

func main(){
arrs := [5]float32{2:12.3,4:12.5}
fmt.Println(arrs)
arrs[0] = 28.93
arrs[1] = 9.00
fmt.Println(arrs) // 求和
var sum float32
for _,v := range arrs{ // 第一个参数是下标,不需要所以使用_,表示省略
sum += v
}
fmt.Println(sum)
}
结果
[0 0 12.3 0 12.5]
[28.93 9 12.3 0 12.5]
62.73
  • 数组在内存中的结构

    因为数组是值类型,所以数组的下标对应的就是具体是数值

五、注意

在实际的开发过程中,其实很少使用数组,因为数组元素的长度被固定了,其实多数使用切片(后面会讲解)

如果喜欢看小说,请到183小说网

最新文章

  1. Eclipse启动时出现错误 An internal error occurred during: “Updating indexes”
  2. Bin Packing
  3. CSS扇形展开效果
  4. ahjesus配置vsftpd和xinetd
  5. ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component解决
  6. SQL中的连接可以分为内连接,外连接,以及交叉连接 。
  7. POI中设置Excel单元格格式样式(居中,字体,边框等)
  8. Debian - 设置MYSQL开机启动
  9. 不重启使XP环境变量生效
  10. 【原创】java 流星划过天空
  11. H5原生拖拽事件
  12. HTTP 503 错误 – 服务不可用 (Service unavailable)
  13. Netty 编解码技术 数据通信和心跳监控案例
  14. java中&和&&的区别 位运算
  15. 已安装nginx动态添加模块
  16. sql server调优
  17. iOS-电池图标【结合贝塞尔曲线控制电量显示】
  18. 6、Spring Cloud -熔断器Hystrix
  19. javascript对象(2)
  20. camera摄像原理之四:曝光和GAMMA【转】

热门文章

  1. Redis 之消息发布与订阅(publish、subscribe)
  2. Java并发——阿里架构师是如何巧用线程池的!
  3. 视频cover占满
  4. redis --------- 使用命令(每天一个)
  5. vue 根据网站路由判断页面主题色
  6. 【codeforces 755E】PolandBall and White-Red graph
  7. [cf 599C] Day at the Beach
  8. 修改tomcat端口号的方法
  9. cogs 22. [HAOI2005] 路由选择问题
  10. Android开发趣事记之周期性广告