Sobes.tech
Junior — Middle

Czy mógłbyś wyjaśnić, co oznacza typ w programowaniu?

sobes.tech AI

Odpowiedź od AI

Stwierdzenie typu (type assertion) w programowaniu, w szczególności w Go, jest sposobem uzyskania wartości konkretnego typu z typu interfejsowego.

W Go, zmienne typu interfejsowego mogą zawierać wartości dowolnego typu, a stwierdzenie typu pozwala na sprawdzenie i wyodrębnienie konkretnego typu z interfejsu.

Przykład:

var i interface{} = "cześć"

s, ok := i.(string) // s będzie "cześć", ok — true

if ok {
    fmt.Println(s) // wyświetla: cześć
} else {
    fmt.Println("i nie zawiera stringa")
}

Jeśli stwierdzenie typu się nie powiedzie i nie użyje się drugiego parametru ok, nastąpi panic. Dlatego często używa się formy z dwoma wartościami zwrotnymi dla bezpiecznej weryfikacji.