首页> 基础笔记 >GoLang基础学习 >数组 数组
Golang初始化切片的三种方式
作者:小萝卜 2023-04-09 【 GoLang 】 浏览 564
简介Golang使用切片的三种方式
方式1
第一种方式:定义一个切片,然后让切片去引用一个已经创建好的数组,比如前面的案例就是这样的。
//第一种方式 定义切片
var arr [5]int = [5]int{1, 2, 3, 4, 5}
qie0 := arr[1:4]
fmt.Println(qie0)
fmt.Printf("qie的长度 len=%v 容量=%v\n", len(qie0), cap(qie0))
方式2
第二种方式:通过 make来创建切片.
基本语法:var切片名 []type = make([]type, len, [cap])
参数说明: type:就是数据类型 len :大小 cap:指定切片容量,可选,如果你分配了 cap,则要求 cap>=len.
案例演示:
//第二种方式 定义切片
var qie []int = make([]int, 5, 10)
qie[1] = 20
qie[3] = 30
fmt.Println(qie)
fmt.Printf("qie的长度 len=%v 容量=%v\n", len(qie), cap(qie))
对上面代码的小结:
1)通过 make方式创建切片可以指定切片的大小和容量
2)如果没有给切片的各个元素赋值,那么就会使用默认值 [int , float=> 0 string =>”” bool =>false]
3)通过 make方式创建的切片对应的数组是由 make底层维护,对外不可见,即只能通过 slice去访问各个元素.
方式3
第 3种方式:定义一个切片,直接就指定具体数组,使用原理类似 make的方式
案例演示:
//第三种方式 定义切片
var qie3 []string = []string{"北京", "上海", "广州", "深圳"}
fmt.Println(qie3)
fmt.Printf("qie的长度 len=%v 容量=%v", len(qie3), cap(qie3))
方式1和方式2的区别
很赞哦! (0)