在golang中,如果需要接收不定长的输入参数且这些参数的类型不同,可以使用空接口interface{}。接收到的参数都会被转换成空接口类型,然后再根据实际情况进行类型转换。下面是一个示例代码:
func MultiParams(args ...interface{}) { for _, arg := range args { switch arg.(type) { case int: fmt.Println(arg.(int)) case string: fmt.Println(arg.(string)) case float32: fmt.Println(arg.(float32)) } } } func main() { MultiParams("hello", 123, 3.14) }
在这个示例中,MultiParams函数接收的参数类型为interface{},然后通过类型断言将不同类型的参数进行转换并输出。