go 基礎陣列和切片

2022-10-11 04:57:16 字數 887 閱讀 7364

陣列

//1、var定義

var arr1 [10]int

arr1[0] = 1

//自動推導

arr2 := [10]int{}

arr2[0] = 2

fmt.println(arr1,arr2)

for k,v := range arr1

切片 不定長陣列,長度和容量

//不定長陣列也叫切片 定義

name := string{}

fmt.println(len(name),cap(name))

//切片和陣列的關係

age := int

age2 := age[0:3]

fmt.println(age2)

//修改age2的值會改變age的值

age2[0] = 100

fmt.println("age2[0]修改後的age2:", age2)

fmt.println("age2[0]修改後的age:", age)

//建立空切片並明確指定容量,這樣可以提高預先效率

//建立乙個容量為20,當前長度為0的int型別切片

age3 := make(int,0,20)

age3[0] = 100

fmt.println(len(age3),cap(age3))

//如果想讓切片完全獨立於原始陣列,可以使用copy()函式

age4 := make(int,10,20)

copy(age4,age3[:])

fmt.println(age3,age4)

Go 陣列和切片

陣列擷取 a 開始索引位置,結束索引 切片 slice 是本身並非動態陣列和陣列指標,通過內部指標指向底層陣列。建立乙個length和capacity都等於5的slice slice make int,5 length 3,capacity 5的slice slice make int,3,5 建立...

Go 陣列 和 切片(array slice)

與其他大多數語言類似,go語言的陣列也是乙個元素型別相同的定長的序列。陣列有 3 種建立方式 1 length type 2 length type 3 type 如下 func test5 arr3 5 int32 arr4 5 int32 arr5 int32 arr6 4 4 int32,fm...

go語言 陣列和切片

目錄切片 var variable name size variable type 預設值為0eg var ss 10 int var s1 5 int方法一 for i 0 i len arry i 方法二 for index,value range array 儲存了三個一維陣列,每個一位陣列長...