## 注意事项
### 数组定义长度后就固定了,没法删除和添加新元素
### 切片添加和删除
```go
package main
import (
"fmt"
)
func main() {
v1 := []int{1, 2} //len=2, cap=2
v1 = append(v1,6,7) //增加一个
v1 = append(v1,6,7,8) //增加多个
fmt.Println(v1,len(v1), cap(v1)) //[1 2 6 7 6 7 8] len=7,cap=8 cap按照初始化的cap倍数增加
//删除一个元素
v2 := []int{1, 2, 3 ,4 ,5, 6}
fmt.Println(v2,len(v2), cap(v2)) //[1 2 3 4 5 6] len=6 cap=6
copyv := append(v2[:1],v2[3:]...) //得到删除后的切片
fmt.Println(copyv,len(copyv), cap(copyv)) //[1 4 5 6] len=4,cap=6
//原始切片底层数组会用最后几位(删除的几位)补齐
fmt.Println(v2,len(v2), cap(v2)) //[1 2 5 6 5 6] len=6 cap=6
//删除后的切片不是新切片,修改会响应源数组
copyv[0] = 100
fmt.Println(copyv) //[100 4 5 6]
fmt.Println(v2) //[100 4 5 6 5 6]
}
```
### 字典的添加和删除
```go
package main
import (
"fmt"
)
func main() {
smap := map[string]int{
"ssd" :23,
"ge" : 45,
}
smap["gggg"] = 23 //添加或修改
fmt.Println(smap) //map[ge:45 gggg:23 ssd:23]
delete(smap,"ssd") //删除一个key
fmt.Println(smap) //map[ge:45 gggg:23]
}
```
有疑问加站长微信联系(非本文作者))