Sobes.tech
Junior — Middle

Je možné vykonávať konverzie typov medzi rôznymi dátovými typmi v jazyku Go?

sobes.tech AI

Odpoveď od AI

V jazyku Go je možné vykonávať konverziu typov, ale je prísna a bezpečná. Konverzia je možná medzi kompatibilnými typmi, napríklad medzi číselnými typmi (int, float64 atď.) alebo medzi typmi s rovnakou štruktúrou (napríklad vlastné typy založené na základných typoch). Nemôžete jednoducho previesť napríklad reťazec na číslo bez explicitnej konverzie.

Príklad konverzie číselných typov:

var a int = 42
var b float64 = float64(a) // explicitná konverzia z int na float64

Tiež je možné konvertovať rozhrania na konkrétne typy pomocou assertion:

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

Takto, konverzia typov v Go vyžaduje explicitné označenie a funguje iba pre kompatibilné typy.