久久国产乱子伦精品免费M,亚洲一区二区三区91,欧美国产在线视频,国产精品视频久久

Go 語言中的數組

數組是一個可以存放相同數據類型數據的定長序列。由于數組是定長的,在使用場景并不豐富,所以在 Go 語言中通常使用的是切片(Slice)。想要使用切片,就先要了解數組,所以在本文先介紹 Go 語言中數組的使用。

 

1. 數組的聲明

數組的聲明形式形如var 數組名 [數組長度]數組類型,其中數組類型可以是數組本身,也就是數組類型的數組,這樣就構成了多維數組。和變量的聲明相同,數組在聲明時會初始化變量類型的零值

代碼示例

代碼塊
  • 1? package main
  • 2
  • 3? import (
  • 4? ? ? ? "fmt"
  • 5? )
  • 6
  • 7? func main() {
  • 8? ? ? ? ? var a [2]int
  • 9? ? ? ? ? var b [2][2]int
  • 10? ? ? ? var c = [2]int{1, 2}
  • 11? ? ? ? var d = [...]int{3, 4}
  • 12? ?? ?? fmt.Println("a的零值", a)
  • 13? ?? ?? fmt.Println("b的零值", b)
  • 14? ? ? ? fmt.Println("c的值", c)
  • 15? ? ? ? fmt.Println("d的值", d)
  • 16? }
  • 第 8 行:聲明一個長度為2的一維數組。自動初始化為零值
  • 第 9 行:聲明一個2行2列的二維數組。自動初始化為零值
  • 第 10 行:聲明并定義一個長度為2,值為[1,2]的數組;
  • 第 11 行:使用?...?表示根據數組后值的長度自動初始化長度。因為后面的值是 [3,4] 數組自動初始化長度為 2。

執行結果

圖片描述

 

2. 數組的比較

在 Go 語言中判斷數組是否相等需要比較兩個部分。一個是數組的長度是否相等,另一個是數組中存放的值是否順序和大小完全相同。只要這兩個部分相等,則 Go 語言中的兩個數組就是相等的。

Tips:Go 語言中只有類型相同的數組才可以互相比較,且數組沒有大小的比較,只能比較是否相等。

代碼示例:

代碼塊
  • 1 ?package main
  • 2
  • 3? import (
  • 4? ? ? ? ? ? "fmt"
  • 5 ?)
  • 6
  • 7? func main(){
  • 8? ?? ?? ?? var a [2]int
  • 9? ? ? ? ?? var c = [2]int{1, 2}
  • 10? ? ?? ??var d = [...]int{1, 2}
  • 11? ? ?? ??fmt.Println("a == c ? ", a == c)
  • 12? ? ?? ? fmt.Println("c == d ?", c == d)
  • 13? }
  • 第 11 行:比較數組 a 和數組 b 是否相等。兩個數組長度相同,是存儲的值不同,所以不相等;
  • 第 12 行:比較數組 c 和數組 d 是否相等。兩個數組長度相同,且存儲的值也相通,所以相等。

執行結果

圖片描述

 

3. 小結

本文主要介紹了Go語言中數組的使用,主要講解了以下幾點:

  • 數組聲明時就決定了長度,會自動初始化零值;
  • 數組可以使用...來自動初始化數組的長度;
  • 數組比較是否相等時必須是數組長度和值完全相同才會相等。

文章來源于網絡,侵刪!

相關新聞

歷經多年發展,已成為國內好評如潮的Linux云計算運維、SRE、Devops、網絡安全、云原生、Go、Python開發專業人才培訓機構!

    1. 主站蜘蛛池模板: 义乌市| 阳山县| 榆社县| 文化| 抚松县| 绥化市| 田林县| 平罗县| 汉中市| 赤水市| 兰溪市| 温州市| 莱西市| 苏州市| 康平县| 绥化市| 栾城县| 平江县| 霍邱县| 西盟| 哈尔滨市| 柞水县| 富阳市| 新余市| 澄江县| 拜城县| 东宁县| 根河市| 分宜县| 长葛市| 芜湖县| 新巴尔虎左旗| 易门县| 金川县| 内黄县| 广宗县| 福建省| 卫辉市| 静宁县| 昌黎县| 怀安县|