go語言基礎之切片

2022-07-05 06:21:08 字數 781 閱讀 9517

1、切片的長度和容量

流程分析:

示例:

package main //必須有個main包

import "fmt"

func main()

s := a[0:3:5]

fmt.println("s = ", s)

fmt.println("len(s) = ", len(s)) //長度 3-0

fmt.println("cap(s) = ", cap(s)) //容量 5-0

s = a[1:4:5]

fmt.println("s = ", s) //從下標1開始,取4-1=3個

fmt.println("len(s) = ", len(s)) //長度 4-1

fmt.println("cap(s) = ", cap(s)) //容量 5-1

}

執行結果:

s =  [1 2 3]    // 從1開始,取3位  

len(s) = 3 // 切看的長度 長度 3-0

cap(s) = 5 // 切片的容量 容量 5-0

s = [2 3 4] // 從下標1開始,取4-1=3個

len(s) = 3 // 4-1=3 用長度減1

cap(s) = 4 // 5-1,切片的容量減1

Go語言基礎 切片

切片 slice 是乙個擁有相同型別元素的可變長度的序列。它是基於陣列型別做的一層封裝。它非常靈活,支援自動擴容。切片是乙個引用型別,它的內部結構包含位址 長度和容量。切片一般用於快速地操作一塊資料集合。陣列的長度是固定的並且陣列長度屬於型別的一部分,所以陣列有很多的侷限性。1 func array...

Go基礎之切片

slicetest project main.go package main import fmt func main slice1 arr 3 在現有陣列上建立切片 slice2 make int,5,10 make建立,5為元素個數,10為最大元素個數 可以增加 slice4 int copy ...

go語言基礎 切片 slice

理解為變長的陣列 a 切片建立 s1 int s2 make t,len,cap arr 5 int s3 arr start end 切割陣列 start,end s4 arr b 切片的型別 資料型別 切片屬於引用型別 s1 int s2 s1 packagemain import fmt fu...