go 切片的創建方式


切片的創建方式現知道的有下面幾種方式,切片為指針類型,從數組中得到的切片修改元素值時,原數組也會發生變化(數組為非指針類型)

package main

import "fmt"

func main() {
	//1.類型自動推導
	s:=[]int{1,2,3,4}
	fmt.Println(s, len(s), cap(s))

	//2.借助make函數,格式為:make(切片類型,切片長度,切片容量)
	s1:=make([]int,5,10)
	fmt.Println(s1, len(s1), cap(s1))

	//3.借助make函數,格式為:make(切片容量,切片長度)
	s2:=make([]int,5)
	fmt.Println(s2, len(s2), cap(s2))
	//這種情況切片容量與切片長度相等

	//4.通過現成的數組(或者切片)進行創建
	a:=[5]int{1,2,3,4,5}
	s3:=a[1:3:5]
	fmt.Println(s3, len(s3), cap(s3))
}
//將整個數組截取為切片可以這樣寫
s4:=a[:]
下面是縮寫含義
切片的append方法,當切片沒有容量時,append的容量會成倍增長,假設append時容量不夠,當時容量為8,則擴容以后的容量為16


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM