Maison > Article > développement back-end > Quels sont les types de golang ?
Go est un langage de programmation typé statiquement qui prend en charge divers types, notamment les types de base, les structures, les tableaux et les tranches, les cartes, les interfaces et les fonctions couramment utilisés. Voici quelques types de langage Go couramment utilisés :
Le langage Go prend en charge les types de base standard, tels que booléen, entier, virgule flottante, chaîne et caractère.
La structure en langage Go est un type composite défini par l'utilisateur qui peut contenir plusieurs champs de types différents. Les structures peuvent être utilisées pour représenter certains types de données complexes. Les champs d'une structure peuvent être de n'importe quel type, y compris d'autres types de structure.
Par exemple :
type Person struct { Name string Age int Height float32 }
Les tableaux sont également un type de base dans le langage Go. Les tableaux ont une taille fixe et la longueur du tableau doit être spécifiée lors de la définition. Une tranche est une référence à un tableau, un espace alloué dynamiquement, et peut être augmentée ou diminuée à tout moment. Vous pouvez utiliser la fonction intégrée len() pour obtenir la longueur d'une tranche.
Exemple :
var array [3]int // 定义一个长度为3的数组 slice := []int{1, 2, 3, 4, 5} // 定义一个切片
Une carte est une structure de données de paires clé-valeur, similaire à un dictionnaire ou une table de hachage dans d'autres langues. Dans le langage Go, la cartographie est représentée à l'aide du type de carte intégré. Vous pouvez utiliser la fonction make() pour créer une carte, puis utiliser l'opérateur [] pour accéder aux éléments de la carte.
Par exemple :
scores := make(map[string]int) // 创建一个名为scores的映射 scores["Alice"] = 85 // 添加一个键值对
Interface est un type de données abstrait qui peut définir un ensemble de méthodes sans implémenter de code spécifique. Dans un type qui implémente une interface, toutes les méthodes définies dans l'interface doivent être implémentées. Les interfaces peuvent rendre le code plus flexible, extensible et maintenable.
Par exemple :
type Shape interface { Area() float64 Perimeter() float64 } type Rectangle struct { Width float64 Height float64 } func (r Rectangle) Area() float64 { return r.Width * r.Height } func (r Rectangle) Perimeter() float64 { return 2 * (r.Width + r.Height) }
Les fonctions sont des citoyens de premier ordre en langage Go, elles peuvent être transmises, attribuées et restituées comme les autres types. Dans le langage Go, une fonction est également un type, et les types de fonctions peuvent être définis comme paramètres ou valeurs de retour.
Par exemple :
type Operation func(int, int) int func Add(a, b int) int { return a + b } func Sub(a, b int) int { return a - b } func calc(op Operation, a, b int) int { return op(a, b) } sum := calc(Add, 10, 20) // 调用calc函数,传入Add函数作为参数 diff := calc(Sub, 30, 15) // 调用calc函数,传入Sub函数作为参数
Voici quelques types de langage Go couramment utilisés. Le langage Go prend également en charge d'autres types, tels que les canaux, les pointeurs, etc. La maîtrise de ces types est très importante pour écrire du code Go lisible et de haute qualité.
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!