首页> 基础笔记 >GoLang基础学习 >数组 数组

Golang初始化切片的三种方式

作者:小萝卜 2023-04-09 浏览 303

简介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)

文章评论

    高端网站建设