Sobes.tech
Junior — Middle

Kuidas saab määrata konkreetse objekti tüübi, mis rakendab liidest?

sobes.tech AI

Vastus AI-lt

Go keeles, et määrata konkreetset objekti, mis rakendab liidest, kasutatakse tüübi väidet (type assertion) või tüübi vahetust (type switch).

Tüübi väite näide:

var i interface{} = someInterfaceValue
if v, ok := i.(ConcreteType); ok {
    // v on ConcreteType tüüp
    fmt.Println("See on ConcreteType", v)
} else {
    fmt.Println("Teine tüüp")
}

Tüübi vahetuse näide:

switch v := i.(type) {
case ConcreteType:
    fmt.Println("See on ConcreteType", v)
case AnotherType:
    fmt.Println("See on AnotherType", v)
default:
    fmt.Println("Tundmatu tüüp")
}