关于go:Go-数组

数组用于在单个变量中存储雷同类型的多个值,而不是为每个值申明独自的变量。

申明数组

在Go中,有两种申明数组的形式:

  1. 应用var关键字:

语法

var array_name = [length]datatype{values} // 这里定义了长度

或者

var array_name = [...]datatype{values} // 这里长度是隐含的

  1. 应用:=符号:

语法

array_name := [length]datatype{values} // 这里定义了长度

或者

array_name := [...]datatype{values} // 这里长度是隐含的

留神:长度指定了数组中要存储的元素数量。在Go中,数组具备固定的长度。数组的长度能够通过一个数字来定义,也能够是隐含的(这意味着编译器依据值的数量来决定数组的长度)。

数组示例
这个示例申明了两个具备定义长度的数组(arr1和arr2):

package main

import "fmt"

func main() {
  var arr1 = [3]int{1, 2, 3}
  arr2 := [5]int{4, 5, 6, 7, 8}

  fmt.Println(arr1)
  fmt.Println(arr2)
}

输入:

[1 2 3]
[4 5 6 7 8]

示例
这个示例申明了两个隐含长度的数组(arr1和arr2):

package main

import "fmt"

func main() {
  var arr1 = [...]int{1, 2, 3}
  arr2 := [...]int{4, 5, 6, 7, 8}

  fmt.Println(arr1)
  fmt.Println(arr2)
}

输入:

[1 2 3]
[4 5 6 7 8]

示例
这个示例申明了一个字符串数组:

package main

import "fmt"

func main() {
  var cars = [4]string{"Volvo", "BMW", "Ford", "Mazda"}
  fmt.Print(cars)
}

输入:

[Volvo BMW Ford Mazda]

拜访数组元素

您能够通过援用索引号来拜访特定的数组元素。

在Go中,数组索引从0开始。这意味着[0]是第一个元素,[1]是第二个元素,依此类推。

示例

这个示例展现了如何拜访prices数组中的第一个和第三个元素:

package main

import "fmt"

func main() {
  prices := [3]int{10, 20, 30}

  fmt.Println(prices[0])
  fmt.Println(prices[2])
}

输入:

10

30

更改数组元素

您还能够通过援用索引号来更改特定数组元素的值。

示例

这个示例展现了如何更改prices数组中第三个元素的值:

package main

import "fmt"

func main() {
  prices := [3]int{10, 20, 30}

  prices[2] = 50
  fmt.Println(prices)
}

输入:

[10 20 50]

数组初始化

如果数组或其元素在代码中没有被初始化,它将被调配其类型的默认值。

提醒:int的默认值是0,string的默认值是””。

示例

package main

import "fmt"

func main() {
  arr1 := [5]int{}           // 未初始化
  arr2 := [5]int{1, 2}       // 局部初始化
  arr3 := [5]int{1, 2, 3, 4, 5} // 全副初始化

  fmt.Println(arr1)
  fmt.Println(arr2)
  fmt.Println(arr3)
}

输入:

[0 0 0 0 0]

[1 2 0 0 0]

[1 2 3 4 5]

仅初始化特定元素

也能够仅初始化数组中的特定元素。

示例

这个示例仅初始化数组的第二和第三个元素:

package main

import "fmt"

func main() {
  arr1 := [5]int{1: 10, 2: 40}

  fmt.Println(arr1)
}

输入:

[0 10 40 0 0]

示例解释

下面的数组有5个元素。

1:10 示意:将10赋值给数组索引1(第二个元素)。

2:40 示意:将40赋值给数组索引2(第三个元素)。

查找数组的长度

应用len()函数能够找到数组的长度:

示例

package main

import "fmt"

func main() {
  arr1 := [4]string{"Volvo", "BMW", "Ford", "Mazda"}
  arr2 := [...]int{1, 2, 3, 4, 5, 6}

  fmt.Println(len(arr1))
  fmt.Println(len(arr2))
}

输入:

4

6

最初

为了不便其余设施和平台的小伙伴观看往期文章,链接奉上:

公众号搜寻Let us Coding知乎开源中国CSDN思否掘金InfoQ简书博客园慕课51CTOhelloworld腾讯开发者社区阿里开发者社区

看完如果感觉有帮忙,欢送点赞、珍藏关注

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理