Go 语言中的数组操作

GolangGolangBeginner
立即练习

This tutorial is from open-source community. Access the source code

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

本实验将测试你对 Go 语言中数组的理解。你需要创建并操作不同类型的数组。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL go(("Golang")) -.-> go/DataTypesandStructuresGroup(["Data Types and Structures"]) go/DataTypesandStructuresGroup -.-> go/arrays("Arrays") subgraph Lab Skills go/arrays -.-> lab-15453{{"Go 语言中的数组操作"}} end

数组

你需要创建一个长度为 5 的整数数组。然后,你要在特定索引处设置一个值,并从特定索引处获取一个值。你还需要找出数组的长度,并在一行中声明和初始化一个数组。最后,你要创建一个二维数组并用值对其进行初始化。

  • 创建一个长度为 5 的整数数组
  • 在特定索引处设置一个值,并从特定索引处获取一个值
  • 找出数组的长度
  • 在一行中声明并初始化一个数组
  • 创建一个二维数组并用值对其进行初始化
## 注意,使用 `fmt.Println` 打印数组时,数组会以 `[v1 v2 v3...]` 的形式出现。
$ go run arrays.go
emp: [0 0 0 0 0]
set: [0 0 0 0 100]
get: 100
len: 5
dcl: [1 2 3 4 5]
2d: [[0 1 2] [1 2 3]]

以下是完整代码:

// 在 Go 语言中,_数组_ 是具有特定长度的编号元素序列。在典型的 Go 代码中,[切片](slices) 更为常见;数组在某些特殊场景中很有用。

package main

import "fmt"

func main() {

	// 这里我们创建一个数组 `a`,它恰好能容纳 5 个 `int` 类型的值。元素类型和长度都是数组类型的一部分。默认情况下,数组用零值初始化,对于 `int` 类型来说就是 `0`。
	var a [5]int
	fmt.Println("emp:", a)

	// 我们可以使用 `array[index] = value` 语法在索引处设置一个值,并使用 `array[index]` 获取一个值。
	a[4] = 100
	fmt.Println("set:", a)
	fmt.Println("get:", a[4])

	// 内置的 `len` 函数返回数组的长度。
	fmt.Println("len:", len(a))

	// 使用此语法在一行中声明并初始化一个数组。
	b := [5]int{1, 2, 3, 4, 5}
	fmt.Println("dcl:", b)

	// 数组类型是一维的,但你可以组合类型来构建多维数据结构。
	var twoD [2][3]int
	for i := 0; i < 2; i++ {
		for j := 0; j < 3; j++ {
			twoD[i][j] = i + j
		}
	}
	fmt.Println("2d: ", twoD)
}

总结

在本实验中,你学习了如何在 Go 语言中创建和操作数组。你学习了如何在特定索引处设置和获取值、找出数组的长度、在一行中声明并初始化数组,以及创建二维数组并用值对其进行初始化。