ExpertiDict

Go · Essencial · Português · Técnico

conversão de tipo

/kõ.veʁ.ˈsɐ̃w̃ ʤi ˈʧi.pu/substantivo

Transformação explícita de um valor para outro tipo, escrita como T(x). Go não faz conversão implícita entre tipos numéricos.

Onde usar

Aparece em erros como 'cannot use x (variable of type int) as float64 value': é preciso escrever float64(x). Vale também entre string e []byte.

Em código

var i int = 7
f := float64(i) / 2
b := []byte("go")
fmt.Println(f, b, string(b))

Exemplos

Falta uma conversão de tipo aqui, o compilador não aceita int onde espera float64.

Converter string para []byte copia os dados, então cuidado em laços quentes.

Cuidado

Não confunda com type assertion, que extrai o tipo concreto de dentro de uma interface; a conversão muda a representação entre tipos compatíveis.

Sinônimos

cast, type conversion

Veja também

Todos os termos de Go