map的创建
This commit is contained in:
55
main.go
55
main.go
@@ -1,43 +1,28 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
import "fmt"
|
||||
|
||||
func main() {
|
||||
//直接创建切片 切片类型 切片长度 切片容量
|
||||
slice := make([]int, 10, 20)
|
||||
fmt.Println(slice)
|
||||
fmt.Println("切片长度:", len(slice))
|
||||
fmt.Println("切片容量:", cap(slice))
|
||||
//创建方式1
|
||||
//定义map变量
|
||||
var a map[int]string
|
||||
//必须通过make初始化才会分配空间
|
||||
a = make(map[int]string)
|
||||
|
||||
slice[0] = 66
|
||||
slice[1] = 88
|
||||
fmt.Println("slice", slice)
|
||||
a[100] = "Hello"
|
||||
a[200] = "World"
|
||||
fmt.Println(a)
|
||||
|
||||
//定义数组
|
||||
var intarr = [6]int{1, 2, 3, 4, 5, 6}
|
||||
//定义切片
|
||||
var slice2 = intarr[1:2]
|
||||
slice2[0] = 66
|
||||
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)
|
||||
//创建方式2
|
||||
b := make(map[int]string)
|
||||
b[100] = "Hello"
|
||||
b[200] = "World"
|
||||
fmt.Println(b)
|
||||
|
||||
//方式3
|
||||
c := map[int]string{
|
||||
100: "Hello",
|
||||
200: "World",
|
||||
}
|
||||
fmt.Println(c)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user