go 切片操作
package main import "fmt" func main() { arr0 := []int{7,8,9} arr0 = append(arr0, 1) arr0 = append(arr0, 2) arr0 = append(arr0, 3) arr0 = append(arr0, arr0...) for i, m := range arr0 { fmt.Println(i, "=>", m) } arr0 = del_item(3, arr0) fmt.Println(arr0) } //删除切片的第i个元素,i从0开始, 返回新的切片 func del_item(i int, arr []int) []int { count := len(arr) //切片为空则直接返回 if count == 0 { return arr } //i小于0就删第0个元素 if 1 < 0 { i = 0 } //传的i超出切片界限就删最后一个元素 if i > count-1 { i = count - 1 // return arr[:count-1] } fmt.Println("删除第", i, "位的元素(首位是第0位)") return append(arr[:i], arr[i+1:]...) }