Junior
Ar Go turi dinaminį tipavimą?
sobes.tech AI
Atsakymas iš AI
Go kalboje nėra klasikinės dinaminės tipizacijos. Go yra griežtai statinės tipizacijos kalba, kurioje kintamojo tipas yra nustatomas kompiliacijos metu ir nesikeičia vykdymo metu.
Tačiau Go turi sąsajas ir interface{} tipą, kuris leidžia dirbti su bet kokio tipo duomenimis, sukuriant tam tikrą lankstumą, panašų į dinaminę tipizaciją. Tačiau dirbant su tokiais reikšmėmis, reikalingas aiškus tipo konvertavimas arba type assertion.
Tuščios sąsajos pavyzdys:
var x interface{}
x = 42
x = "eilutė"
// Norint gauti konkretų tipą, reikia atlikti konvertavimą:
if str, ok := x.(string); ok {
fmt.Println("Tai yra eilutė:", str)
}