Go學(xué)習(xí)--數(shù)組

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?數(shù)組

數(shù)組是具有相同唯一類型的一組已編號(hào)且長度固定的數(shù)據(jù)項(xiàng)序列;這種類型可以是任意的原始類型例如整形、字符串或者自定義類型。數(shù)組長度必須是一個(gè)常量表達(dá)式,并且必須是一個(gè)非負(fù)整數(shù)。數(shù)組長度也是數(shù)組類型的一部分,所以[5]int和[10]int是屬于不同類型的。

數(shù)組聲明格式:

var array [len]type ;? 或者 array := [len]type{} 注意:這里的{}是必須的

ep:

?var names [5]string; 或者 array := [5]string{}

獲取數(shù)組長度:

var arr [5]int or arr := [5]int{}?

ep:

len(arr) //5

range遍歷數(shù)組:

arr := [5]int{1, 2, 3, 4}

ep:

for i, v := range arr {

? //i 為index, v為value

? //如果i在這里不使用,則不能這樣使用,不然編譯會(huì)報(bào)錯(cuò), ep: for _, v := range arr {}

}

注意:這里的value只是值拷貝,不能在這里更改數(shù)組的值。

range的用法細(xì)節(jié):

1、for i,v := range arr { }

2、var i,v int

? ? ? ?for i,v = range arr { }

1和2的卻別在于,1是讓定義i,v并同時(shí)接收range返回的值, 2則是用兩個(gè)定義好的變量去接收range返回的值。

注意:Go語言中數(shù)組是一種值類型,所以可以通過new關(guān)鍵字來創(chuàng)建

var arr1 = new([5]int) ?or arr1 := new([5]int)

var arr2 [5]int? or arr2 := [5]int{}

區(qū)別:

arr1的類型是: *[5]int, ?arr2的類型是[5]int


數(shù)組字面量:

var arrKeyValue = [5]string{3: "xuechao", 4: "liu"}?//這里講這個(gè)數(shù)組的第4個(gè)和第5個(gè)元素分別指定為了"xuechao", "liu", 3和4分別代表為數(shù)組的索引

or:

var arr = [4]{1,2,3,4} ?or ?arr := [4]int{1,2,3,4}

將數(shù)組傳遞給函數(shù):

如果傳遞一個(gè)大的數(shù)組,則會(huì)消耗很多內(nèi)存,有兩種方法可以解決:

1,傳遞數(shù)組的指針

2,傳遞數(shù)組的切片


多維數(shù)組的聲明并初始化:

var arrs= [5][10][4]int{{{1, 2}, {2, 3}}, {{3, 4}, {4, 5}}}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • SwiftDay011.MySwiftimport UIKitprintln("Hello Swift!")var...
    smile麗語閱讀 4,105評(píng)論 0 6
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,927評(píng)論 0 33
  • 最近關(guān)于續(xù)保的問題后臺(tái)很多留言,在這里統(tǒng)一給大家解答一下!根據(jù)車險(xiǎn)公司對(duì)數(shù)十萬車主投保數(shù)據(jù)進(jìn)行了綜合分析,目前車主...
    金惠家閱讀 996評(píng)論 0 52

友情鏈接更多精彩內(nèi)容