没有一个简单的,内置的用于反转接口{}的部分。您可以编写一个for循环来做到这一点:
for i, j := 0, len(s)-1; i < j; i, j = i+1, j-1 { s[i], s[j] = s[j], s[i]}Go
1.8中引入的reflect.Swapper函数可用于编写通用的反转函数:
func reverseAny(s interface{}) { n := reflect.ValueOf(s).Len() swap := reflect.Swapper(s) for i, j := 0, n-1; i < j; i, j = i+1, j-1 { swap(i, j) }}游乐场的例子



