Décrypter les types de données du langage Go : en un coup d'œil, des exemples de code spécifiques sont nécessaires
1 Introduction
Les types de données dans les langages de programmation sont très importants pour les développeurs, ils déterminent quels types nous pouvons stocker et exploiter. données. Dans le langage Go, le concept de types de données est similaire à celui des autres langages de programmation, mais le langage Go possède son propre système et ses propres caractéristiques de types de données. Cet article vous donnera une compréhension approfondie des types de données du langage Go et décryptera cette famille à travers des exemples de codes spécifiques.
2. Types de données de base
Les types de données de base du langage Go comprennent : booléen, entier, virgule flottante, nombre complexe, chaîne et caractère. Ce sont bool, int, float, complexe, string et rune. Examinons-les séparément.
- Type booléen (bool)
Le type booléen n'a que deux valeurs, à savoir vrai et faux. Comme d’autres langages, nous pouvons utiliser des types booléens pour juger et contrôler le déroulement du programme.
Exemple de code :
package main
import "fmt"
func main() {
var b bool = true
fmt.Println(b)
}
Copier après la connexion
- Integer (int)
Le type de données entier peut stocker des valeurs entières et sa taille est liée à l'architecture informatique sous-jacente. En langage Go, les entiers sont divisés en entiers signés et entiers non signés. Voici quelques types de données entières couramment utilisées :
- int8 : entier signé de 8 bits, allant de -128 à 127.
- int16 : entier signé de 16 bits, la plage de valeurs est comprise entre -32 768 et 32 767.
- int32 : entier 32 bits signé, la plage de valeurs va de -2147483648 à 2147483647.
- int64 : entier signé de 64 bits, la plage de valeurs est de -9223372036854775808 à 9223372036854775807.
- uint8 : entier non signé de 8 bits, la plage de valeurs est comprise entre 0 et 255.
- uint16 : entier non signé de 16 bits, la plage de valeurs est comprise entre 0 et 65 535.
- uint32 : entier 32 bits non signé, allant de 0 à 4294967295.
- uint64 : entier 64 bits non signé, allant de 0 à 18446744073709551615.
- int : En fonction du nombre de bits dans le système d'exploitation et le compilateur, les systèmes d'exploitation 32 bits sont des entiers de 32 bits et les systèmes d'exploitation 64 bits sont des entiers de 64 bits.
- uint : en fonction du nombre de bits dans le système d'exploitation et le compilateur, les systèmes d'exploitation 32 bits sont des entiers non signés de 32 bits et les systèmes d'exploitation 64 bits sont des entiers non signés de 64 bits.
Exemple de code :
package main
import "fmt"
func main() {
var i int = 10
fmt.Println(i)
}
Copier après la connexion
- Point flottant (float)
Le type de données à virgule flottante peut stocker des valeurs décimales et il a deux précisions : float32 et float64.
- float32 : nombre à virgule flottante simple précision, précis à 7 décimales près.
- float64 : Nombre à virgule flottante double précision, précis à 15 décimales près.
Exemple de code :
package main
import "fmt"
func main() {
var f float32 = 3.14
fmt.Println(f)
}
Copier après la connexion
- Complexe (complexe)
Le type de nombre complexe est utilisé pour représenter des nombres complexes dont les parties réelles et imaginaires sont toutes deux de type à virgule flottante. En langage Go, les types complexes ont deux précisions : complex64 et complex128.
- complexe64 : La partie réelle et la partie imaginaire sont représentées par deux float32.
- complexe128 : La partie réelle et la partie imaginaire sont représentées par deux float64.
Exemple de code :
package main
import "fmt"
func main() {
var c complex64 = complex(1, 2)
fmt.Println(c)
}
Copier après la connexion
- String (string)
String est un type de données en langage Go, qui est utilisé pour représenter une chaîne de caractères. Les chaînes sont immuables, c'est-à-dire qu'elles ne peuvent pas être modifiées dans la chaîne d'origine, mais nous pouvons traiter les chaînes via certaines fonctions et opérations. Dans le langage Go, les chaînes sont placées entre guillemets (").
Exemple de code :
package main
import "fmt"
func main() {
var s string = "Hello, World!"
fmt.Println(s)
}
Copier après la connexion
- Caractère (rune)
Le caractère (rune) est le type de données utilisé pour représenter les caractères Unicode dans le langage Go. Il s'agit en fait d'un type entier qui représente le point de code d'un caractère Unicode. Les caractères sont représentés par des guillemets simples (')
Exemple de code :
package main
import "fmt"
func main() {
var r rune = '你'
fmt.Println(r)
}
Copier après la connexion
3. Types de données composites
En plus des types de données de base, le langage Go fournit également. Certains types de données composites, notamment tableau, tranche, carte, structure, interface et fonction
- Array
Array est un type fixe Une structure de données de taille qui peut stocker une série d'éléments du même type, la taille. d'un tableau est fixe et ne peut pas être modifié.
Exemple de code :
package main
import "fmt"
func main() {
var arr [3]int
arr[0] = 1
arr[1] = 2
arr[2] = 3
fmt.Println(arr)
}
Copier après la connexion
- Slice
Slice est une structure de données de taille dynamique, qui peut être automatiquement développée selon les besoins. tableaux ou autres tranches via l'opérateur slice [:]
Exemple de code :
package main
import "fmt"
func main() {
arr := []int{1, 2, 3}
fmt.Println(arr)
}
Copier après la connexion
- Dictionnaire (carte)
Un dictionnaire est une collection non ordonnée composée de clés et de valeurs. Dans le langage Go, un dictionnaire est créé à l'aide de make. function
Exemple de code :
package main
import "fmt"
func main() {
dict := make(map[string]int)
dict["apple"] = 1
dict["banana"] = 2
dict["cherry"] = 3
fmt.Println(dict)
}
Copier après la connexion
- Structure (struct)
Une structure est un type de données personnalisé, qui peut contenir plusieurs champs. Chaque champ a son propre type et son propre nom. en utilisant le mot-clé type
Exemple de code :
package main
import "fmt"
type Person struct {
Name string
Age int
}
func main() {
p := Person{"Alice", 18}
fmt.Println(p)
}
Copier après la connexion
- Interface
Une interface est un type de données abstrait qui définit un ensemble de méthodes. L'interface peut être implémentée par un type concret, et les méthodes qui implémentent l'interface peuvent être appelées. via le type d'interface.
Exemple de code :
package main
import "fmt"
type Shape interface {
Area() float64
}
type Circle struct {
Radius float64
}
func (c Circle) Area() float64 {
return c.Radius * c.Radius * 3.14
}
func main() {
var s Shape
c := Circle{5}
s = c
fmt.Println(s.Area())
}
Copier après la connexion
- 函数(function)
函数是一段可重复使用的代码块,它可以接受参数并返回结果。在Go语言中,函数是一等公民,可以像其他值类型一样被传递和赋值。
示例代码:
package main
import "fmt"
func Add(a, b int) int {
return a + b
}
func main() {
sum := Add(1, 2)
fmt.Println(sum)
}
Copier après la connexion
总结
本文通过具体的代码示例对Go语言的数据类型进行了解密,详细介绍了Go语言的基本数据类型和复合数据类型。希望本文可以帮助大家更好地理解和应用Go语言的数据类型。
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!