1. 程式人生 > >go語音基礎之切片

go語音基礎之切片

1、切片的長度和容量

流程分析:

 

示例:

package main //必須有個main包

import "fmt"

func main() {
	a := []int{1, 2, 3, 4, 5}
	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位  {1, 2, 3, 4, 5}
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