av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

創(chuàng)新互聯(lián)GO教程:Go語言數(shù)組詳解

數(shù)組是一個(gè)由固定長(zhǎng)度的特定類型元素組成的序列,一個(gè)數(shù)組可以由零個(gè)或多個(gè)元素組成。因?yàn)閿?shù)組的長(zhǎng)度是固定的,所以在Go語言中很少直接使用數(shù)組。

成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、孟州網(wǎng)絡(luò)推廣、微信小程序、孟州網(wǎng)絡(luò)營(yíng)銷、孟州企業(yè)策劃、孟州品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供孟州建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com

和數(shù)組對(duì)應(yīng)的類型是 Slice(切片),Slice 是可以增長(zhǎng)和收縮的動(dòng)態(tài)序列,功能也更靈活,但是想要理解 slice 工作原理的話需要先理解數(shù)組,所以本節(jié)主要為大家講解數(shù)組的使用,至于 Slice(切片)將在《 Go語言切片》一節(jié)中為大家講解。

Go語言數(shù)組的聲明

數(shù)組的聲明語法如下:

var 數(shù)組變量名 [元素?cái)?shù)量]Type

語法說明如下所示:

  • 數(shù)組變量名:數(shù)組聲明及使用時(shí)的變量名。
  • 元素?cái)?shù)量:數(shù)組的元素?cái)?shù)量,可以是一個(gè)表達(dá)式,但最終通過編譯期計(jì)算的結(jié)果必須是整型數(shù)值,元素?cái)?shù)量不能含有到運(yùn)行時(shí)才能確認(rèn)大小的數(shù)值。
  • Type:可以是任意基本類型,包括數(shù)組本身,類型為數(shù)組本身時(shí),可以實(shí)現(xiàn)多維數(shù)組。

數(shù)組的每個(gè)元素都可以通過索引下標(biāo)來訪問,索引下標(biāo)的范圍是從 0 開始到數(shù)組長(zhǎng)度減 1 的位置,內(nèi)置函數(shù) len() 可以返回?cái)?shù)組中元素的個(gè)數(shù)。

var a [3]int             // 定義三個(gè)整數(shù)的數(shù)組
fmt.Println(a[0])        // 打印第一個(gè)元素
fmt.Println(a[len(a)-1]) // 打印最后一個(gè)元素

// 打印索引和元素
for i, v := range a {
    fmt.Printf("%d %d\n", i, v)
}

// 僅打印元素
for _, v := range a {
    fmt.Printf("%d\n", v)
}

默認(rèn)情況下,數(shù)組的每個(gè)元素都會(huì)被初始化為元素類型對(duì)應(yīng)的零值,對(duì)于數(shù)字類型來說就是 0,同時(shí)也可以使用數(shù)組字面值語法,用一組值來初始化數(shù)組:

var q [3]int = [3]int{1, 2, 3}
var r [3]int = [3]int{1, 2}
fmt.Println(r[2]) // "0"

在數(shù)組的定義中,如果在數(shù)組長(zhǎng)度的位置出現(xiàn)“...”省略號(hào),則表示數(shù)組的長(zhǎng)度是根據(jù)初始化值的個(gè)數(shù)來計(jì)算,因此,上面數(shù)組 q 的定義可以簡(jiǎn)化為:

q := [...]int{1, 2, 3}
fmt.Printf("%T\n", q) // "[3]int"

數(shù)組的長(zhǎng)度是數(shù)組類型的一個(gè)組成部分,因此 [3]int 和 [4]int 是兩種不同的數(shù)組類型,數(shù)組的長(zhǎng)度必須是常量表達(dá)式,因?yàn)閿?shù)組的長(zhǎng)度需要在編譯階段確定。

q := [3]int{1, 2, 3}
q = [4]int{1, 2, 3, 4} // 編譯錯(cuò)誤:無法將 [4]int 賦給 [3]int

比較兩個(gè)數(shù)組是否相等

如果兩個(gè)數(shù)組類型相同(包括數(shù)組的長(zhǎng)度,數(shù)組中元素的類型)的情況下,我們可以直接通過較運(yùn)算符(
==
!=)來判斷兩個(gè)數(shù)組是否相等,只有當(dāng)兩個(gè)數(shù)組的所有元素都是相等的時(shí)候數(shù)組才是相等的,不能比較兩個(gè)類型不同的數(shù)組,否則程序?qū)o法完成編譯。

a := [2]int{1, 2}
b := [...]int{1, 2}
c := [2]int{1, 3}
fmt.Println(a == b, a == c, b == c) // "true false false"
d := [3]int{1, 2}
fmt.Println(a == d) // 編譯錯(cuò)誤:無法比較 [2]int == [3]int

遍歷數(shù)組——訪問每一個(gè)數(shù)組元素

遍歷數(shù)組也和遍歷切片類似,代碼如下所示:

var team [3]string
team[0] = "hammer"
team[1] = "soldier"
team[2] = "mum"

for k, v := range team {
    fmt.Println(k, v)
}

代碼輸出結(jié)果:

0 hammer
1 soldier
2 mum

代碼說明如下:

  • 第 6 行,使用 for 循環(huán),遍歷 team 數(shù)組,遍歷出的鍵 k 為數(shù)組的索引,值 v 為數(shù)組的每個(gè)元素值。
  • 第 7 行,將每個(gè)鍵值打印出來。

文章名稱:創(chuàng)新互聯(lián)GO教程:Go語言數(shù)組詳解
文章來源:http://uogjgqi.cn/article/ccocsdd.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流