golang的cap與len小結


小結

cap主要是為了讓slice提供可變長度

概念

cap 數據類型的容量

len 數據類型的實際長度

// 數據類型為 切片,長度為5,容量為10 
a := make([]int,5,10) 
fmt.Println(a,cap(a),len(a)) // out put : [0 0 0 0 0] 10 5 

// 切片追加元素,當超過原來的的容量的時候,會翻倍擴容,但不是一定翻倍,如果容量太大不會再翻倍 
for i:=0;i<10;i++  {
    a = append(a, i) 
}
// 再對值進行修改 
for i:=0;i<10;i++  {
    a[i] = i
}
fmt.Println(a,cap(a),len(a)) // [0 1 2 3 4 5 6 7 8 9 5 6 7 8 9] 20 15


免責聲明!

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



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