我一直在尝试实现一个可以从任何类型的切片中随机选择一个元素的函数(例如python的random.choice函数)
func RandomChoice(a []interface{}, r *rand.Rand) interface{} {
i := r.Int()%len(a)
return a[i]
}
但是,当我尝试将[] float32类型的切片传递到第一个参数中时,会发生此错误:
cannot use my_array (type []float32) as type []interface {} in function argument
这是对接口{}的根本性滥用吗?有什么更好的方法吗?
泛舟湖上清波郎朗
慕运维8079593
相关分类