您的位置:首页 >聚焦 >

golang 数组与切片【基础操作】

2022-04-18 17:06:51    来源:程序员客栈

packagemainimport"fmt"funcmain(){varteam=[...]string{"hammer","soldier","mum"}fmt.Println(team)//[hammersoldiermum]fork,v:=rangeteam{fmt.Println(k,v)}//0hammer//1soldier//2muma:=2b:=28c:=a+bfmt.Println(c)//30varbuild[30]intfori:=0;i<30;i++{//0~29build[i]=i+1}//切片全部整体fmt.Println(build)//[123456789101112131415161718192021222324252627282930]fmt.Println(build[:])//与切片本身等效fmt.Println(build[:len(build)])//与切片本身等效fmt.Println(build[:30])//与切片本身等效//部分fmt.Println(build[5:10])//[678910]fmt.Println(build[18:])//[192021222324252627282930]fmt.Println(build[:2])//[12]fmt.Println(build[0:0])//[]空切片,一般用于切片复位fmt.Println(build[0:1])//[1]fmt.Println(build[30:])//[]varnumbers[]intfori:=0;i<10;i++{numbers=append(numbers,i)fmt.Printf("len:%dcap:%dpointer:%p\n",len(numbers),cap(numbers),numbers)}/*len:1cap:1pointer:0xc000016400len:2cap:2pointer:0xc000016410len:3cap:4pointer:0xc000014120len:4cap:4pointer:0xc000014120len:5cap:8pointer:0xc00001a100len:6cap:8pointer:0xc00001a100len:7cap:8pointer:0xc00001a100len:8cap:8pointer:0xc00001a100len:9cap:16pointer:0xc000102080len:10cap:16pointer:0xc000102080*///切片复制//设置元素数量constcount=10//预分配足够多的元素切片srcData:=make([]int,count)//将切片赋值fori:=0;i

精彩推荐golang实现RPC的几种方式涨见识| 字节PHP/Golang社招面经在Windows10安装部署Golang开发环境Golang 新手要注意的陷阱和常见错误(一)面试官:说下Golang Slice的底层实现,泪崩了!

关键词: 原始数据 开发环境 数据分配

相关阅读