Sobes.tech
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.