Golang面试宝典——Go语言数组知识点

关于Golang面试宝典

最近几年,Go的热度持续飙升,国内外很多大公司都在大规模的使用Go。Google是Go语言诞生的地方,其他公司如Facebook、腾讯、阿里、字节跳动、百度、京东、小米等都在拥抱和转向Go。Go语言的开源项目也非常多,如kubernetes、docker、etcd。

随着市场对Go语言人才需求的增长,很多开发者都投入了Go语言的怀抱。本系列文章将以第一视角与大家一同开始Golang的面试之路,希望大家能够有所收获,拿下心仪的offer。

Go语言数组知识点总结

数组可以存放多个<font color='red'>同一类型</font>数据。在Go语言中,数组是值类型。

初始化一个数组

var numArray1 [3]int = [3]int{1, 2, 3}

var numArray2 = [3]int{1, 2, 3}

var numArray3 = [...]int{1, 2, 3}

// 指定下标的元素值
var numArray4 = [3]int{2: 3}

Go语言中数组内存是连续的,数组首元素的地址为数组的地址,数组中各个元素的地址间隔由数组储存的数据类型决定。

遍历数组

方式1

arr := [3]int{1, 2, 3}

for index, value := range arr {
    fmt.Printf("index: %d, value: %v", index, value)
}

方式2

arr := [3]int{1, 2, 3}

for i := 0; i < len(arr); i++ {
    fmt.Printf("index: %d, value: %v", i, arr[i])
}

数组注意事项

  1. 数组是多个<font color='red'>相同类型</font>数据的集合,一旦声明/定义后,<font color='red'>长度是固定的,不能动态变化</font>
  2. 数组中的元素可以是任何数据,包括值类型和引用类型
  3. 数组创建后,如果没有赋值,则默认值为该类型数据的默认值
  4. Go语言中数组为<font color='red'>值类型</font>,默认情况下是值传递,如果想要在函数中修改原来的数组,可使用指针方式引用传递
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容