map的创建

This commit is contained in:
2025-11-14 22:22:11 +08:00
parent ca9bd89b9d
commit 86797e0591

55
main.go
View File

@@ -1,43 +1,28 @@
package main package main
import ( import "fmt"
"fmt"
)
func main() { func main() {
//直接创建切片 切片类型 切片长度 切片容量 //创建方式1
slice := make([]int, 10, 20) //定义map变量
fmt.Println(slice) var a map[int]string
fmt.Println("切片长度:", len(slice)) //必须通过make初始化才会分配空间
fmt.Println("切片容量:", cap(slice)) a = make(map[int]string)
slice[0] = 66 a[100] = "Hello"
slice[1] = 88 a[200] = "World"
fmt.Println("slice", slice) fmt.Println(a)
//定义数组 //创建方式2
var intarr = [6]int{1, 2, 3, 4, 5, 6} b := make(map[int]string)
//定义切片 b[100] = "Hello"
var slice2 = intarr[1:2] b[200] = "World"
slice2[0] = 66 fmt.Println(b)
fmt.Println("intarr", intarr)
fmt.Println("slice2", slice2)
i := 10
//底层追加元素的时候进行扩容,老数组扩容为新数组
slice3 := append(slice2, i)
fmt.Println("slice3", slice3)
//给自己追加
//底层是新数组,不能直接维护,需要通过切片间接维护操作
slice3 = append(slice3, 11)
fmt.Println("slice3", slice3)
//...代表追加是是一个切片
slice3 = append(slice3, slice2...)
fmt.Println("slice3", slice3)
//拷贝
copy(slice3, slice)
fmt.Println("slice3", slice3)
//方式3
c := map[int]string{
100: "Hello",
200: "World",
}
fmt.Println(c)
} }