Sobes.tech
Junior — Middle

È possibile effettuare conversioni di tipo tra diversi tipi di dati nel linguaggio Go?

sobes.tech AI

Risposta dell'AI

Nel linguaggio Go, è possibile eseguire conversioni di tipo, ma sono rigorose e sicure. La conversione è possibile tra tipi compatibili, ad esempio tra tipi numerici (int, float64, ecc.) o tra tipi con la stessa struttura (ad esempio, tipi personalizzati basati su tipi di base). Non è possibile convertire semplicemente, ad esempio, una stringa in un numero senza una conversione esplicita.

Esempio di conversione di tipi numerici:

var a int = 42
var b float64 = float64(a) // conversione esplicita da int a float64

È anche possibile convertire interfacce in tipi specifici tramite asserzione di tipo:

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

Pertanto, la conversione di tipi in Go richiede un'indicazione esplicita e funziona solo per tipi compatibili.