Junior — Middle
Vai ir iespējams veikt tipu pārvēršanu starp dažādiem datu tipiem Go valodā?
sobes.tech AI
Atbilde no AI
Go valodā tipu pārvēršana ir iespējama, taču tā ir stingra un droša. Pārvēršana ir iespējama starp saderīgiem tipiem, piemēram, starp skaitliskajiem tipiem (int, float64 utt.) vai starp tipiem ar vienādu struktūru (piemēram, pielāgotiem tipiem, kas balstīti uz pamattipiem). Piemēram, virknes pārvēršana uz skaitli bez skaidras pārvēršanas nav iespējama.
Skaitlisko tipu pārvēršanas piemērs:
var a int = 42
var b float64 = float64(a) // skaidra pārvēršana no int uz float64
Tāpat, interfeisi var tikt pārvērsti uz konkrētiem tipiem, izmantojot type assertion:
var i interface{} = "sveiki"
str, ok := i.(string)
if ok {
fmt.Println(str)
}
Tādējādi, Go valodā tipu pārvēršana prasa skaidru norādi un darbojas tikai saderīgos tipos.