Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Conversion de Type de Base | Types de Données
Introduction à Golang
course content

Contenu du cours

Introduction à Golang

Introduction à Golang

1. Commencer
2. Types de Données
3. Structures de Contrôle
4. Fonctions
5. Tableaux et Tranches
6. Introduction aux Structs et Maps

book
Conversion de Type de Base

Le transtypage est le processus de conversion de données d'un type de données à un autre. Cependant, il est important de noter qu'il n'est pas toujours possible de convertir des données d'un type de données à un autre. Par exemple, nous pouvons convertir un float en un int et vice versa. Cependant, il ne serait pas logique de convertir une string en un int, et donc ce n'est pas possible.

Il existe deux types de conversions de type ou de transtypage. L'un d'eux est le transtypage implicite. Le transtypage implicite se produit lorsque Go convertit automatiquement un type en un autre lorsqu'il est sûr et sans ambiguïté. Par exemple, lorsque nous assignons une valeur entière à une variable flottante, elle est traitée automatiquement comme un flottant, car aucune donnée ne peut être perdue lors de la conversion (10 est le même que 10.0) :

go

index

copy
1
var myFloat float32 = 10 // A valid statement

L'autre type de conversion de type est la Conversion de Type Explicite, qui se produit lorsque le programmeur convertit explicitement des données ou des expressions d'un type à un autre. La syntaxe pour la conversion de type explicite est desiredType(expression), par exemple :

go

index

copy
12345678
package main import "fmt" func main() { var number1 float32 = 7.9 var number2 int = int(number1) fmt.Println(number2) // Outputs 7 }

Dans le programme ci-dessus, nous convertissons une valeur float32 en un int en utilisant la conversion de type explicite. En conséquence, la partie décimale du nombre original est supprimée, et seule la valeur entière 7 est stockée dans number2. Il est important de noter que dans ce cas, certaines données sont perdues, en particulier la partie décimale du nombre (0.9). Cependant, nous avons fait ce choix explicitement.

De même, nous pouvons convertir un rune en une string. Dans le chapitre Runes, nous avons exploré un programme qui affichait la valeur d'une Rune, qui était un nombre. Cependant, nous pouvons afficher l'équivalent caractère d'une Rune en la convertissant en une chaîne de caractères :

go

index

copy
123456789
package main import "fmt" func main() { var char rune = 'a' fmt.Println(char) // Outputs 97 fmt.Println(string(char)) // Outputs 'a' }

Cependant, nous ne pouvons pas convertir une string en un rune:

go

index

copy
12
var myString string = "A string value" fmt.Println(rune(myString)) // Error: cannot convert myString (variable of type string) to type rune

Il est important de noter que nous ne pouvons pas non plus convertir une chaîne contenant un seul caractère en rune :

go

index

copy
1234567
package main import "fmt" func main() { var text string = "a"; fmt.Printf(rune(text)) // Error here }
Laquelle des syntaxes suivantes est correcte pour le transtypage en Go ?

Laquelle des syntaxes suivantes est correcte pour le transtypage en Go ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 6
We're sorry to hear that something went wrong. What happened?
some-alt