乐趣区

关于go:Go数组与切片

数组的申明形式

var arr []int
var arr2 = [4]int{1,2,3,4}
arr3 :=[...]int{2,3,4}

数组在赋值和函数调用时的形参都是值复制
当数组的长度小于 4 时,运行时在栈中初始化
当数组的长度大于 4 时,启动时在动态区初始化

切片的初始化

var slice1 []int
var slice2 []int=make([]int,5)
var slice3 []int=make([]int,5,6)
slice4:=[]int{1,2,3,4}

切片的残缺复制

// 创立指标切片
nums1 :=make([]int,len(nums),cap(nums))
// 将 nums 复制到 nums1 中
count:=copy(nums1,nums)

切片扩容后返回的地址不肯定想等
能够用 a =append(a,T)来保障其平安

对于 go 语言中的可比拟性

切片,函数,map 不可比拟

对于 map

map 并不反对并发的读写,但反对并发的读
负载因子的计算:负载因子 = 哈希表中的元素数量 / 桶数量

退出移动版