package main
import (
"fmt"
)
func main() {
// test data
var a = [][]int{
[]int{1,2},
[]int{3,4},
[]int{5,6},
[]int{7,8},
}
for i := range a {
fmt.Println(a) // print out
_ = append(a[:i], a[i+1:]...) // remove element
}
}
预期结果
[[1 2] [3 4] [5 6] [7 8]]
[[1 2] [3 4] [5 6] [7 8]]
[[1 2] [3 4] [5 6] [7 8]]
[[1 2] [3 4] [5 6] [7 8]]
实际结果
[[1 2] [3 4] [5 6] [7 8]]
[[3 4] [5 6] [7 8] [7 8]]
[[3 4] [7 8] [7 8] [7 8]]
[[3 4] [7 8] [7 8] [7 8]]
https://play.golang.org/p/KahcX1MmDHO
为什么会这样?原来的切片坏了。:(
一只斗牛犬
相关分类