Sobes.tech
Junior

Vai Go ir dinamiskā tipizācija?

sobes.tech AI

Atbilde no AI

Go valodā nav klasiskas dinamiskas tipēšanas. Go ir stingri statiska tipēšanas valoda, kurā mainīgā tips tiek noteikts kompilācijas laikā un nemainās izpildes laikā.

Tomēr, Go ir interfeisi un tips interface{}, kas ļauj strādāt ar jebkāda veida datiem, radot noteiktu elastību, kas līdzinās dinamiskajai tipēšanai. Bet ar šādām vērtībām strādāšanai nepieciešama skaidra tipa pārvēršana vai assertion.

Tukšā interfeisa piemērs:

var x interface{}
 x = 42
 x = "rinda"

// Lai iegūtu konkrētu tipu, ir jāveic pārvēršana:
if str, ok := x.(string); ok {
    fmt.Println("Tas ir rinda:", str)
}