Un tableau en langage Go est un bloc de mémoire continu dans lequel chaque élément occupe une taille d'espace fixe. Le type d'élément d'un tableau peut être n'importe quel type de données de base ou un type personnalisé. La longueur d'un tableau est fixe, spécifiée lors de la création du tableau et ne peut pas être modifiée ultérieurement.
Le principe sous-jacent de mise en œuvre d'un tableau est d'utiliser un espace mémoire continu pour stocker les éléments du tableau. Le premier élément du tableau est stocké à l'adresse de début de l'espace mémoire et le dernier élément est stocké à l'adresse de fin de l'espace mémoire. Il n'y a aucun espace entre les éléments du tableau, donc la taille totale du tableau est égale à la taille des éléments du tableau multipliée par la longueur du tableau.
Par exemple, le code suivant crée un tableau contenant 10 éléments de type int :
var arr [10]int
Le principe d'implémentation sous-jacent de ce tableau est le suivant :
+---+---+---+---+---+---+---+---+---+---+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | +---+---+---+---+---+---+---+---+---+---+
Le premier élément du tableau est stocké à l'adresse de départ 0 du espace mémoire, et le dernier élément L'élément est stocké à l'adresse de fin 9 de l'espace mémoire. Il n'y a aucun espace entre les éléments du tableau, donc la taille totale du tableau est égale à la taille des éléments du tableau (4 octets) multipliée par la longueur du tableau (10), qui est de 40 octets.
Les éléments d'un tableau sont accessibles par index. L'index d'un tableau est un entier qui représente la position d'un élément dans le tableau. Le premier élément du tableau a un indice de 0 et le dernier élément a un indice de la longueur du tableau moins un.
Par exemple, le code suivant accède au premier élément du tableau arr :
fmt.Println(arr[0])
Ce code affichera 0 car le premier élément du tableau arr est 0.
Les tableaux peuvent être parcourus à travers une boucle for. La variable dans la boucle for peut être l'index du tableau ou l'élément du tableau.
Par exemple, le code suivant parcourt le tableau arr et génère chaque élément :
for i := 0; i < len(arr); i++ { fmt.Println(arr[i]) }
Ce code affichera :
0 1 2 3 4 5 6 7 8 9
Les tableaux peuvent être comparés en comparant les éléments des tableaux. Les règles de comparaison pour les tableaux sont les suivantes :
Par exemple, le code suivant compare le tableau arr et le tableau br :
var arr = [10]int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} var br = [10]int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} fmt.Println(arr == br)
Ce code affichera vrai car les éléments du tableau arr et du tableau br sont les mêmes.
Les tableaux peuvent être copiés via la fonction de copie. La syntaxe de la fonction copy est la suivante :
func copy(dst, src []Type) int
Parmi eux, dst est le tableau de destination et src est le tableau source. La fonction copy copiera les éléments du tableau src dans le tableau dst. Si la longueur du tableau dst est inférieure à la longueur du tableau src, seuls les éléments length du tableau dst sont copiés.
Par exemple, le code suivant copie le tableau arr dans le tableau br :
var arr = [10]int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} var br = [10]int{} copy(br, arr) fmt.Println(br)
Ce code affichera :
[0 1 2 3 4 5 6 7 8 9]
Les tableaux peuvent être découpés en tranches pour créer des sous-tableaux. La syntaxe du découpage est la suivante :
arr[start:end]
où start est l'index de départ du sous-tableau et end est l'index de fin du sous-tableau. Si start est omis, l’index de départ du sous-tableau est 0. Si end est omis, l'index de fin du sous-tableau est la longueur du tableau.
Par exemple, le code suivant crée un sous-tableau du tableau arr :
var arr = [10]int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} var subArr = arr[2:5] fmt.Println(subArr)
Ce code affichera :
[2 3 4]
Les tableaux sont une structure de données importante dans le langage Go. Le principe sous-jacent d’implémentation d’un tableau est d’utiliser un espace mémoire continu pour stocker les éléments du tableau. Les éléments d'un tableau sont accessibles par index ou itérés via une boucle for. Les tableaux peuvent être comparés en comparant les éléments du tableau ou copiés à l'aide de la fonction de copie. Les tableaux peuvent être découpés pour créer des sous-tableaux.
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!