package main import "fmt" type A struct { A int } type B struct { B int } func Print(i interface{}) { switch v := i.(type) { case A: fmt.Println("A: ", v.A) case B: fmt.Println("B: ", v.B) } } func main() { a := A{5} b := B{42} Print(a) Print(b) }
Click to display ⇲
Click to hide ⇱
A: 5 B: 42