Golang 內(nèi)建容器

內(nèi)建容器

數(shù)組

數(shù)組是值類(lèi)型

聲明數(shù)組

var variable_name [SIZE] variable_type

var array1 [10]float32
array2 := [3]int{1,2,3}
array3 := [...]int{1,2,3}

var grid [4][5]bool

切片(Slice)

定義切片

你可以聲明一個(gè)未指定大小的數(shù)組來(lái)定義切片:

var identifier []type  //切片不需要說(shuō)明長(zhǎng)度懈贺。

var slice1 []type = make([]type, len)  //使用make()函數(shù)來(lái)創(chuàng)建切片

//也可以簡(jiǎn)寫(xiě)為
slice1 := make([]type, len)

make([]T, length, capacity)
//也可以指定容量,其中capacity為可選參數(shù)靴迫。這里 len 是數(shù)組的長(zhǎng)度并且也是切片的初始長(zhǎng)度藏澳。

切片初始化

s :=[] int {1,2,3 }
直接初始化切片策肝,[]表示是切片類(lèi)型喷市,{1,2,3}初始化值依次是1,2,3.其cap=len=3

s := arr[:]
初始化切片s,是數(shù)組arr的引用

s := arr[startIndex:endIndex]
將arr中從下標(biāo)startIndex到endIndex-1 下的元素創(chuàng)建為一個(gè)新的切片

s := arr[startIndex:]
缺省endIndex時(shí)將表示一直到arr的最后一個(gè)元素

s := arr[:endIndex]
缺省startIndex時(shí)將表示從arr的第一個(gè)元素開(kāi)始

s1 := s[startIndex:endIndex]
通過(guò)切片s初始化切片s1

s :=make([]int,len,cap)
通過(guò)內(nèi)置函數(shù)make()初始化切片s,[]int 標(biāo)識(shí)為其元素類(lèi)型為int的切片

空切片

一個(gè)切片在未初始化之前默認(rèn)為 nil瞄沙,長(zhǎng)度為 0

 var numbers []int
 if(numbers == nil){
      fmt.Printf("切片是空的")
}

切片操作函數(shù)

  • len() 獲取長(zhǎng)度
  • cap() 獲取容量
  • append() 追加元素索赏。添加元素如果超過(guò)cap,系統(tǒng)會(huì)重新分配更大的底層數(shù)組
  • copy() copy切片

Map

定義 Map

可以使用內(nèi)建函數(shù) make 也可以使用 map 關(guān)鍵字來(lái)定義 Map:

/* 聲明變量届搁,默認(rèn) map 是 nil */
var map_variable map[key_data_type]value_data_type

/* 使用 make 函數(shù) */
map_variable = make(map[key_data_type]value_data_type)
m := map[string]string{
    "a":"a",
    "b":"b",
}

m2 = make(map[string]int)

var m3 map[sting]int

m2,m3都是nil map。如果不初始化 map,那么就會(huì)創(chuàng)建一個(gè) nil map卡睦。nil map 不能用來(lái)存放鍵值對(duì)

delete() 函數(shù)

delete() 函數(shù)用于刪除集合的元素, 參數(shù)為 map 和其對(duì)應(yīng)的 key

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末宴胧,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子表锻,更是在濱河造成了極大的恐慌恕齐,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,888評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瞬逊,死亡現(xiàn)場(chǎng)離奇詭異显歧,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)确镊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)士骤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人蕾域,你說(shuō)我怎么就攤上這事拷肌。” “怎么了旨巷?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,386評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵巨缘,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我采呐,道長(zhǎng)若锁,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,726評(píng)論 1 297
  • 正文 為了忘掉前任斧吐,我火速辦了婚禮又固,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘会通。我一直安慰自己口予,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,729評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布涕侈。 她就那樣靜靜地躺著沪停,像睡著了一般。 火紅的嫁衣襯著肌膚如雪裳涛。 梳的紋絲不亂的頭發(fā)上木张,一...
    開(kāi)封第一講書(shū)人閱讀 52,337評(píng)論 1 310
  • 那天,我揣著相機(jī)與錄音端三,去河邊找鬼舷礼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛郊闯,可吹牛的內(nèi)容都是我干的妻献。 我是一名探鬼主播蛛株,決...
    沈念sama閱讀 40,902評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼育拨!你這毒婦竟也來(lái)了谨履?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,807評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤熬丧,失蹤者是張志新(化名)和其女友劉穎笋粟,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體析蝴,經(jīng)...
    沈念sama閱讀 46,349評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡害捕,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,439評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了闷畸。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片尝盼。...
    茶點(diǎn)故事閱讀 40,567評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖腾啥,靈堂內(nèi)的尸體忽然破棺而出东涡,到底是詐尸還是另有隱情,我是刑警寧澤倘待,帶...
    沈念sama閱讀 36,242評(píng)論 5 350
  • 正文 年R本政府宣布疮跑,位于F島的核電站,受9級(jí)特大地震影響凸舵,放射性物質(zhì)發(fā)生泄漏祖娘。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,933評(píng)論 3 334
  • 文/蒙蒙 一啊奄、第九天 我趴在偏房一處隱蔽的房頂上張望渐苏。 院中可真熱鬧,春花似錦菇夸、人聲如沸琼富。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,420評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)鞠眉。三九已至,卻和暖如春择诈,著一層夾襖步出監(jiān)牢的瞬間械蹋,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,531評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工羞芍, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留哗戈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,995評(píng)論 3 377
  • 正文 我出身青樓荷科,卻偏偏與公主長(zhǎng)得像唯咬,于是被迫代替她去往敵國(guó)和親纱注。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,585評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 1.安裝 https://studygolang.com/dl 2.使用vscode編輯器安裝go插件 3.go語(yǔ)...
    go含羞草閱讀 1,556評(píng)論 0 6
  • // //Go語(yǔ)言切片 // /* // go語(yǔ)言切片是對(duì)數(shù)組的抽象 // Go 數(shù)組的長(zhǎng)度不可改變胆胰,在特定場(chǎng)景中...
    JackieZhang閱讀 848評(píng)論 0 0
  • 一個(gè)女生之所以跟另一個(gè)女生玩得好煮剧,玩得來(lái)是因?yàn)樗齻冎g暫時(shí)沒(méi)有利益之爭(zhēng),一旦涉及到自身利益了将鸵,就會(huì)立馬分道揚(yáng)鑣勉盅。 ...
    等風(fēng)的獅子閱讀 665評(píng)論 1 2
  • 喬遷新駐地,啟航新生活 今天上午顶掉,全體隊(duì)友都搬入了新駐地草娜。話不多說(shuō),先上一張圖直觀的感受一下條件的變化痒筒。 老...
    Rainching閱讀 529評(píng)論 0 1
  • RT-Thread 中的線程分為靜態(tài)線程—線程堆棧由編譯器靜態(tài)分配宰闰,使用 rt_thread_init()函數(shù)創(chuàng)建...
    sgy1993閱讀 392評(píng)論 0 0