Junior
Czy w Go istnieje dynamiczne typowanie?
sobes.tech AI
Odpowiedź od AI
W Go nie ma klasycznego dynamicznego typowania. Go jest językiem z sztywnym, statycznym typowaniem, gdzie typ zmiennej jest określany podczas kompilacji i nie zmienia się podczas działania programu.
Jednak w Go istnieją interfejsy i typ interface{}, które pozwalają na pracę z dowolnymi typami danych, co tworzy pewną elastyczność podobną do dynamicznego typowania. Praca z takimi wartościami wymaga jawnego rzutowania typu lub użycia asercji typu.
Przykład użycia pustego interfejsu:
var x interface{}
x = 42
x = "łańcuch"
// Aby uzyskać konkretny typ, trzeba dokonać rzutowania:
if str, ok := x.(string); ok {
fmt.Println("To jest łańcuch:", str)
}