Maison > Article > développement back-end > Types de base et types complexes en langage Go
Le langage Go est un langage de programmation rapide, sûr et fiable développé par Google en 2009. Le système de typage du langage Go est simple, clair et fortement typé.
Dans le langage Go, les types de base incluent les types booléens, entiers, à virgule flottante, complexes, chaînes et pointeurs, etc. De plus, le langage Go fournit également certains types complexes, tels que des tableaux, des tranches, des cartes, des canaux, des interfaces et des structures. Ensuite, nous présenterons en détail les types de base et les types complexes dans le langage Go.
1. Types de base
Le type booléen n'a que deux valeurs : vrai et faux. Il n'est pas sensible à la casse et est représenté par le type booléen. Par exemple :
var b bool = true
le type entier est l'un des types de base du langage Go, notamment int, int8, int16, int32, int64, uint, uint8, uint16, uint32, uint64 et uintptr etc. Parmi eux, int, uint et uintptr sont des types liés au système, qui peuvent avoir différents nombres de bits et plages de valeurs selon différents systèmes d'exploitation et architectures matérielles. Par exemple :
var i int = 100
var ui uint = 100
var uptr uintptr = 0x123456789abcdef0
Le type à virgule flottante est divisé en float32 et float64, utilisés pour représenter les nombres à virgule flottante. Par exemple :
var f32 float32 = 3.1415
var f64 float64 = 3.141592653589793
Le type de nombre complexe se compose d'une partie réelle et d'une partie imaginaire, divisée en complexe64 et complexe128, utilisées pour représenter des nombres complexes. Par exemple :
var c64 complex64 = 3 + 4i
var c128 complex128 = 3 + 4i
Le type de chaîne est utilisé pour représenter des séquences de caractères, entourées de guillemets doubles. Par exemple :
var s string = "Hello, world!"
Le type de pointeur est utilisé pour représenter les adresses mémoire et peut être utilisé pour accéder indirectement aux variables et allouer de la mémoire. Par exemple :
var p *int = &i
2. Type complexe
Un tableau est une collection ordonnée de variables avec le même type de données. La longueur du tableau est fixe et vous devez la spécifier lors de sa définition. Par exemple :
var a [3]int = [3]int{1, 2, 3}
Slicing est une sorte d'encapsulation de tableaux, alloue dynamiquement de la mémoire et la longueur peut changer. Les tranches n'ont pas besoin d'être spécifiées en longueur et sont créées à l'aide de la fonction make. Par exemple :
var s []int = make([]int, 3)
s[0] = 1
s[1] = 2
s[2] = 3
le mapping est un Structure de données de paires clé-valeur, également appelée dictionnaire ou tableau associatif. Les clés et valeurs de la carte peuvent être de n'importe quel type et sont créées via la fonction make. Par exemple :
var m map[string]int = make(map[string]int)
m["one"] = 1
m["two"] = 2
channel est un type Il s'agit d'un mécanisme de communication entre coroutines qui peut réaliser la synchronisation et le partage de données. Les canaux sont divisés en canaux tamponnés et canaux non tamponnés, créés à l'aide de la fonction make. Par exemple :
var ch chan int = make(chan int, 3)
ch <- 1
ch <- 2
ch <- 3
Interface est un type qui définit le comportement, Les interfaces sont mises en œuvre en acceptant de mettre en œuvre des méthodes spécifiques. Les interfaces peuvent atteindre le polymorphisme, améliorant ainsi la flexibilité et l'évolutivité du programme. Par exemple :
type MyInterface interface {
MyMethod() int
}
Une structure est un type qui combine plusieurs champs entre eux. Les champs d'une structure sont typés et peuvent également contenir des champs d'autres types de structure. Par exemple :
type Person struct {
Name string Age int
}
3. Résumé
Le système de types du langage Go est simple, clair et fortement typé. Les types de base incluent les booléens, les entiers, les nombres complexes et les chaînes. et le type de pointeur, etc. Les types complexes incluent des tableaux, des tranches, des cartes, des canaux, des interfaces, des structures, etc. La maîtrise des types de base et des types complexes du langage Go peut améliorer l’efficacité de la programmation et la qualité du code.
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!