陣列 切片 字典 函式

2022-09-29 00:18:19 字數 796 閱讀 5097

目錄:

1:陣列【切片】

2:字典

3:函式

陣列和切片的區別就是乙個是固定長度乙個不固定。

定長陣列-不定長陣列

names := string
字典和python的字典一樣的,也是key/value。儲存的key是經過雜湊運算的。

2.1:宣告方式

注意點1!使用字典一定要先分配空間

注意點2!在map中不存在訪問越界的問題,它認為所有的key都是有效的。不像python如果你dict["不存在的key"]就會報錯!,所以訪問乙個不存在的key不會崩潰,它會返回這個型別的零值。

所以無法通過獲取value來判斷乙個key是否存在,因此我們需要乙個能夠校驗key是否存在的方式!

以下方式:

value,ok := idnames[1]

如何id=1是存在的,value就是該key的值,此時的ok是true。反之如何id=1不存在,value就是零值,ok是false。

注意點3:併發任務處理的時候,需要對map進行上鎖,要不然你有人讀有人寫,go程式會崩潰的。

使用自由函式刪除

delete(指定那個map,指定要刪除哪個key)

二、切片

陣列,切片和字典

1 陣列 array 陣列是乙個有相同資料型別的元素組成的固定長度的有序集合,如 var x 5 int,使用var定義的陣列,預設值如果整型為0,浮點型為0.0,字串為 物件為nil。求整型陣列之和,使用range函式,遍歷陣列 切片 字典時,返回索引和元素值 當對某個返回值不感興趣時,要用下劃線...

陣列切片和函式

資料是存放元素的容器 必須指定存放的元素的型別和容量 長度 陣列的長度是陣列型別的一部分 var a1 3 bool false false false var a2 4 bool false false false false fmt.prinf a1 v a2 v n a1,a1 陣列的初始化 ...

go實現陣列切片洗牌函式Shuffle

在深度學習 機器學習中,我們經常會使用到乙個叫shuffle函式,我一般叫打亂函式,也有人叫洗牌函式,就是聽著高階點,它可以幫助我們打亂資料集,那麼在go中我們如何實現乙個呢?大家可以直接使用我寫的乙個工具庫 lodago,有點lodash的味道。對於打亂函式有很多演算法實現,由於我的場景並不需要實...