Maison >développement back-end >Golang >conversion explicite golang

conversion explicite golang

WBOY
WBOYoriginal
2023-05-10 09:49:06539parcourir

En langage Go, la conversion explicite (Type Conversion) est une opération permettant de convertir un type de données en un autre type de données. Dans certains cas, des données de différents types comme int et float doivent être explicitement converties avant de pouvoir être manipulées. Dans cet article, nous explorerons les conversions explicites et leur utilisation en langage Go.

Déclaration de variables

Avant de commencer à discuter des conversions explicites en langage Go, nous devons savoir comment déclarer des variables. La méthode de déclaration de variable en langage Go est la suivante :

var name type

où name est le nom de la variable et type est le type de données de la variable. Par exemple, pour déclarer une variable de type entier nommée num, on peut utiliser le code suivant :

var num int

Conversion de type

En langage Go, tout type de données peut être directement converti en un autre type de données. Il existe deux méthodes de conversion de type : la conversion implicite et la conversion explicite.

Conversion implicite

Dans le langage Go, lorsque deux variables de types de données différents sont utilisées, Go convertira automatiquement l'une des variables en un autre type de données. Cette conversion est appelée conversion implicite. Par exemple :

var num int = 10
var f float32 = 1.5
var result float32

result = f + num // Conversion implicite
fmt.Println(result)

Dans le code ci-dessus, en raison de la différence entre données num et f Différents types, Go convertira num en type float32 puis effectuera l'opération.

Conversion explicite

La conversion explicite est une manière plus explicite de conversion de type utilisée dans les programmes, qui nous permet de convertir la valeur d'une variable d'un type à un autre. Une conversion explicite peut être effectuée en utilisant le nom de la conversion et le type de données à convertir.

La syntaxe est la suivante :

variable_name := (value)

Par exemple, on peut convertir une chaîne en un type entier :

str := "123"
i, _ := strconv .Atoi( str)
fmt.Println(i)

Dans le code ci-dessus, nous utilisons la fonction strconv.Atoi() pour effectuer une conversion de conversion afin de convertir le type de chaîne en type entier.

De même, nous pouvons également convertir un entier en type chaîne :

i := 123
str := strconv.Itoa(i)
fmt.Println(str)

Dans le code ci-dessus, nous avons utilisé strconv.Itoa () convertit le type entier en type chaîne.

Remarques

Lors de la conversion de type, assurez-vous de faire attention à la plage du type de données. Par exemple, si une valeur de type entier est trop grande, un débordement peut se produire même lors de la conversion en un type de valeur plus grand.

De plus, lorsque vous utilisez la conversion explicite, vous devez également confirmer si la valeur de la variable peut être convertie dans le type de données cible. Si les types de données sont différents, mais que certaines conversions implicites sont autorisées entre certains types de données, un comportement inattendu peut se produire.

Conclusion

En langage Go, la conversion explicite est une opération qui convertit un type de données en un autre type de données. Cette conversion peut être effectuée en utilisant le nom de la conversion et le type de données à convertir. Pendant le processus de conversion, vous devez faire attention à la plage du type de données et si la valeur de la variable convertie est acceptable.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:tableau golang en XMLArticle suivant:tableau golang en XML