packagecommonimport("reflect""sort")funcgetCommon(arrayinterface{})(reflect.Type,reflect.Value,int){t:=reflect.TypeOf(array)v:=reflect.ValueOf(array)l:=v.Len()returnt,v,l}funcSortSlice(arrayinterface{}){t,v,_:=getCommon(array)// res := make([]interface{}, l)ift.Kind()==reflect.Slice{switchv.Index(0).Kind(){casereflect.Int:array:=array.([]int)sort.Ints(array)casereflect.String:array:=array.([]string)sort.Strings(array)casereflect.Float64:array:=array.([]float64)sort.Float64s(array)default:panic("the param can only be int/string/float64 array")}}else{panic("expects parameter 1 to be array")}}