Go go lang 筆記2

現在說一下關於Go的數據結構

Arrays - 固定大小

slices - 不固定大小

maps - 一個Hashtable

宣告一個Array

用數據來宣告和初始化一個Array

由Go來計算Array的數量

指定特定位置的數據

Points of array, 0和1初始化為一個int pointer

Array複製, 有兩份數據

Array pointer複製, 雖然有兩份數據, 但pointer指向同一組string

二維數組

以Pointer來傳Array入函數中

創建一個slice,長度和容量皆為5

長度為3,容量為5

slice帶內容

指定某一位置的內容

nil slice

空的slice

取得部份slice,兩個slice指向同一份數據,newSlice的長度為2,容量為4

為slice增加數據,append後slice為[10,20,30,60,50]

append會增加slice的長度和容量,現時當容量小於1000時,會以100%來增加容量,當超過1000時會以25%來增加

three-index slice,i為開始,j為結束,k-i為容量

定義長度和容量一致可以令到不會重寫原slice數據

Append另一個slice

for range

range的value為複製品

range ignore index

傳統for loop

多維度slice

傳送slice到function可以直接傳,因數據在底層Array,slice只包含pointer,長度和容量

創建一個Map

取得數值,檢查key是否存在

Loop map

移除項目

map傳入function,直接傳就可以

 

Leave a Reply