Sobes.tech
Junior — Middle

Ar galėtumėte paaiškinti, ką reiškia tipas programavime?

sobes.tech AI

Atsakymas iš AI

Tipų teiginys (type assertion) programavime, ypač Go kalboje, yra būdas gauti konkretaus tipo reikšmę iš interfeiso tipo.

Go kalboje, interfeiso tipo kintamieji gali turėti bet kokio tipo reikšmes, o tipų teiginys leidžia patikrinti ir išgauti konkretų tipą iš interfeiso.

Pavyzdys:

var i interface{} = "labas"

s, ok := i.(string) // s bus "labas", ok — true

jei ok {
    fmt.Println(s) // išveda: labas
} kitaip {
    fmt.Println("i neapima string")
}

Jei tipų teiginys nepavyksta ir ne naudojamas antrasis parametras ok, įvyksta panika. Todėl dažnai naudojama forma su dviem grąžinamaisiais reikšmėmis saugiam patikrinimui.