Types de données du langage Go

Dans le langage de programmation Go, les types de données servent à déclarer des fonctions et des variables.

Les types de données existent pour diviser les données en catégories ayant des besoins de taille mémoire différents. Lors de la programmation, il suffit d'allouer une mémoire importante lorsque des données volumineuses sont nécessaires, ce qui permet d'utiliser pleinement la mémoire.

Le langage Go dispose des types de données suivants par catégorie :

Numéro de sérieType et description
1Type booléen
Les valeurs booléennes ne peuvent être que les constantes true ou false. Un exemple simple : var b bool = true.
2Types numériques
Le type entier int et les types à virgule flottante float32 et float64. Go prend en charge les nombres entiers et à virgule flottante, et prend également en charge les nombres complexes, où les opérations bit à bit utilisent le complément à deux.
3Type chaîne :
Une chaîne est une séquence de caractères formée en connectant une série de caractères de longueur fixe. Les chaînes Go sont constituées d'octets individuels. Les octets des chaînes Go utilisent l'encodage UTF-8 pour identifier le texte Unicode.
4Types dérivés :
Y compris :
  • (a) Type pointeur
  • (b) Type tableau
  • (c) Types structurés (struct)
  • (d) Type canal
  • (e) Type de fonction
  • (f) Type slice
  • (g) Type interface (interface)
  • (h) Type map

Types numériques

Go dispose également de types dépendants de l'architecture, tels que : int, uint et uintptr.

Numéro de sérieType et description
1uint8
Entier non signé de 8 bits (0 à 255)
2uint16
Entier non signé de 16 bits (0 à 65535)
3uint32
Entier non signé de 32 bits (0 à 4294967295)
4uint64
Entier non signé de 64 bits (0 à 18446744073709551615)
5⟦0⟧
Entier signé de 8 bits (-128 à 127)
6int16
Entier signé 16 bits (-32768 à 32767)
7int32
Entier signé 32 bits (-2147483648 à 2147483647)
8int64
Entier signé 64 bits (-9223372036854775808 à 9223372036854775807)

Type à virgule flottante

Numéro de sérieType et description
1float32
Nombre à virgule flottante 32 bits IEEE-754
2float64
Nombre à virgule flottante 64 bits IEEE-754
3complex64
Nombres réels et imaginaires 32 bits
4complex128
Nombres réels et imaginaires 64 bits

Autres types numériques

La liste suivante répertorie des types numériques supplémentaires :

Numéro de sérieType et description
1octet
Similaire à uint8
2rune
Similaire à int32
3uint
32 ou 64 bits
4int
Même taille que uint
5uintptr
Type entier non signé, utilisé pour stocker un pointeur
autres extensions