Sobes.tech
Junior — Middle

Peut-on effectuer une conversion de types entre différents types de données dans le langage Go?

sobes.tech IA

Réponse de l'IA

Dans le langage Go, il est possible d'effectuer des conversions de types, mais elles sont strictes et sûres. La conversion est possible entre types compatibles, par exemple, entre types numériques (int, float64, etc.) ou entre types avec la même structure (par exemple, des types personnalisés basés sur des types de base). Il n'est pas possible de convertir simplement, par exemple, une chaîne en nombre sans une conversion explicite.

Exemple de conversion de types numériques:

var a int = 42
var b float64 = float64(a) // conversion explicite de int à float64

Il est également possible de convertir des interfaces en types spécifiques via l'assertion de type:

var i interface{} = "bonjour"
str, ok := i.(string)
if ok {
    fmt.Println(str)
}

Ainsi, la conversion de types en Go nécessite une indication explicite et ne fonctionne que pour des types compatibles.