Go中interface{}转化为[]interface{} func ToSlice(arr interface{}) []interface{} { ret := make([]interface{}, 0) v := reflect.ValueOf(arr) if v.Kind() != reflect.Slice { ret = append(ret, arr) return ret } l := v.Len() for i := 0; i < l; i++ { ret = append(ret, v.Index(i).Interface()) } return ret }