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.