Maison  >  Article  >  développement back-end  >  Que stocke le tableau Golang ?

Que stocke le tableau Golang ?

(*-*)浩
(*-*)浩original
2019-12-31 10:35:581989parcourir

Que stocke le tableau Golang ?

Un tableau fait référence à une série de collections du même type de données. Chaque donnée contenue dans le tableau est appelée un élément du tableau. Ce type peut être n'importe quel type primitif, tel que int, string, etc., ou un type défini par l'utilisateur. (Apprentissage recommandé : GO )

Le nombre d'éléments contenus dans un tableau est appelé la longueur du tableau. En Golang, un tableau est un type de données de longueur fixe, et la longueur du tableau fait partie du type, c'est-à-dire que [5]int et [10]int sont deux types différents.

Une autre caractéristique des tableaux dans Golang est la continuité de la mémoire occupée, ce qui signifie que les éléments du tableau sont alloués à des adresses mémoire consécutives, donc l'indexation des éléments du tableau est très rapide.

Caractéristiques des matrices Golang

Nous pouvons résumer les caractéristiques des matrices Golang dans les trois points suivants :

Longueur fixe : Cela signifie que le tableau ne peut pas s'agrandir ou se réduire. Si vous souhaitez étendre un tableau, vous pouvez uniquement créer un nouveau tableau et copier les éléments du tableau d'origine dans le nouveau tableau.

Mémoire contiguë : Cela signifie qu'elle peut être conservée dans le cache plus longtemps et que la vitesse de recherche est plus rapide. C'est une structure de données très efficace, et cela signifie également qu'elle peut être numériquement. (arr[index]) Indexe l'élément dans le tableau.

Type fixe : Le type fixe signifie qu'il limite les données que chaque élément du tableau peut stocker et le nombre d'octets de données que chaque élément peut stocker.

Un tableau est un type de données de longueur fixe. Sa longueur et le type de données des éléments stockés sont déterminés lorsque le tableau est déclaré et ne peuvent pas être modifiés. Si vous devez stocker plus d'éléments, vous devez d'abord créer un tableau plus long, puis copier les données du tableau d'origine vers le nouveau tableau.

La mémoire occupée par le tableau est allouée en continu. Par exemple, on crée un tableau contenant 5 éléments entiers :

arr1 := [5]int{10,20,30,40,50}

Le tableau est. en mémoire La structure est similaire à la figure ci-dessous :

Que stocke le tableau Golang ?

En raison de la mémoire continue, le processeur peut mettre en cache les données utilisées pendant une période plus longue. Et il est très simple de calculer l'index lorsque la mémoire est continue, ce qui signifie que tous les éléments du tableau peuvent être rapidement itérés.

La raison est que les informations de type du tableau peuvent fournir la distance qui doit être déplacée en mémoire à chaque accès à un élément. Puisque chaque élément du tableau a le même type et est alloué en continu, il est alloué en continu. peut être déplacé à une vitesse fixe. Indexez n'importe quel élément d'un tableau, très rapidement !

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