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")
}