Maison  >  Article  >  développement back-end  >  Une analyse approfondie de la structure des données du tableau en langage Go

Une analyse approfondie de la structure des données du tableau en langage Go

PHPz
PHPzoriginal
2024-02-01 08:00:08553parcourir

Une analyse approfondie de la structure des données du tableau en langage Go

Structure de données de tableau :

Un tableau est une structure de données de base qui contient une séquence d'éléments, chacun avec un index. Les éléments d'un tableau peuvent être de n'importe quel type, y compris d'autres tableaux. La taille d'un tableau est déterminée lors de sa création et ne peut pas être modifiée ultérieurement.

Exemple de code :

// 创建一个包含 5 个整数的数组
var numbers [5]int

// 给数组中的元素赋值
numbers[0] = 1
numbers[1] = 2
numbers[2] = 3
numbers[3] = 4
numbers[4] = 5

// 遍历数组中的元素并打印出来
for i := 0; i < len(numbers); i++ {
    fmt.Println(numbers[i])
}

Sortie :

1
2
3
4
5

La longueur du tableau :

La longueur du tableau peut être obtenue à l'aide de la fonction len(). len() 函数获取。

// 获取数组的长度
length := len(numbers)

// 打印数组的长度
fmt.Println(length)

输出:

5

数组的元素:

数组的元素可以通过索引访问。索引从 0 开始,到数组的长度减一结束。

// 获取数组第一个元素
firstElement := numbers[0]

// 打印第一个元素
fmt.Println(firstElement)

输出:

1

数组的遍历:

数组可以使用 for 循环遍历。

// 遍历数组中的元素并打印出来
for i := 0; i < len(numbers); i++ {
    fmt.Println(numbers[i])
}

输出:

1
2
3
4
5

多维数组:

Go 语言还支持多维数组。多维数组是数组的数组。

// 创建一个二维数组
var matrix [3][3]int

// 给二维数组中的元素赋值
matrix[0][0] = 1
matrix[0][1] = 2
matrix[0][2] = 3
matrix[1][0] = 4
matrix[1][1] = 5
matrix[1][2] = 6
matrix[2][0] = 7
matrix[2][1] = 8
matrix[2][2] = 9

// 遍历二维数组中的元素并打印出来
for i := 0; i < len(matrix); i++ {
    for j := 0; j < len(matrix[i]); j++ {
        fmt.Println(matrix[i][j])
    }
}

输出:

1
2
3
4
5
6
7
8
9

数组的切片:

数组的切片是数组的一部分。切片可以使用 [] 操作符创建。

// 创建一个数组的切片
slice := numbers[1:3]

// 打印切片中的元素
fmt.Println(slice)

输出:

[2 3]

数组的比较:

数组可以使用 ==!= 操作符进行比较。

// 创建两个数组
var numbers1 = [5]int{1, 2, 3, 4, 5}
var numbers2 = [5]int{1, 2, 3, 4, 5}

// 比较两个数组是否相等
fmt.Println(numbers1 == numbers2)

输出:

true

数组的拷贝:

数组可以使用 copy()

// 创建一个数组
var numbers = [5]int{1, 2, 3, 4, 5}

// 创建一个新的数组
var newNumbers = [5]int{}

// 将数组拷贝到新的数组中
copy(newNumbers, numbers)

// 打印新的数组
fmt.Println(newNumbers)

Sortie :

[1 2 3 4 5]

🎜Éléments du tableau : 🎜🎜🎜Les éléments du tableau sont accessibles par index. L'indexation commence à 0 et se termine à la longueur du tableau moins un. 🎜rrreee🎜🎜Sortie : 🎜🎜rrreee🎜🎜Traversée du tableau : 🎜🎜🎜Les tableaux peuvent être parcourus à l'aide de la boucle for. 🎜rrreee🎜🎜Sortie : 🎜🎜rrreee🎜🎜Tableau multidimensionnel : 🎜🎜🎜Le langage Go prend également en charge les tableaux multidimensionnels. Les tableaux multidimensionnels sont des tableaux de tableaux. 🎜rrreee🎜🎜Sortie : 🎜🎜rrreee🎜🎜Tranche de tableau : 🎜🎜🎜Une tranche d'un tableau est une partie du tableau. Les tranches peuvent être créées à l'aide de l'opérateur []. 🎜rrreee🎜🎜Sortie : 🎜🎜rrreee🎜🎜Comparaison des tableaux : 🎜🎜🎜Les tableaux peuvent être comparés à l'aide des opérateurs == et !=. 🎜rrreee🎜🎜Sortie : 🎜🎜rrreee🎜🎜Copie du tableau : 🎜🎜🎜Les tableaux peuvent être copiés à l'aide de la fonction copy(). 🎜rrreee🎜🎜Sortie : 🎜🎜rrreee

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn