新博客地址(shankusu.me)
golang 对 slice 的操作全在 [:] 中 和 append
// 删除切片的第三个元素
sslice := []int{0,1,2,3,4}
sslice = append(sslice[:2], sslice[3:]...)
1. sslice[A:B], 包涵 A, 不包括 B; 若 A = B,不包涵 A,所以删除第一个元素的写法为
sslice = append(sslice[:0], sslice[1:]) -- 删除第一个元素
2 .append 第一个参数为 切片, 第二(三,四)个参数为 元素, 若为 切片, 可以使用 ... 分解 (析构) 为元素
删除单个元素值
func delItem(vs []string, s string) []string {
maxIdx := len(vs) - 1
for i := maxIdx; i >= 0; i-- {
if s == vs[i] {
vs = append(vs[:i], vs[i+1:]...)
}
}
return vs
}