天天看點

Go語言學習心得 -- Go語言數組

說起go語言的資料,我不得不說一下JAVA中的數組,

在Java中,數組是用來存放同一種資料類型的集合,注意隻能存放同一種資料類型(Object類型數組除外)。

在java中數組聲明方式有好幾種,簡單列舉一下

第一種:

資料類型 []  數組名稱 = new 資料類型[數組長度];
           
int [] myArray = new int[3];
           

這裡 [ ] 可以放在數組名稱的前面,也可以放在數組名稱的後面,我們推薦放在數組名稱的前面,這樣看上去 資料類型 [ ] 表示的很明顯是一個數組類型,而放在數組名稱後面,則不是那麼直覺。

第二種

資料類型 [] 數組名稱 = {數組元素1,數組元素2,......}
           
int [] myArray2 = {1,2,3};
           

數組是存在下标索引的,通過下标可以擷取指定位置的元素,數組小标是從0開始的,也就是說下标0對應的就是數組中第1個元素

myArray2[0] = 1;
           

索引為0的位置,數組裡的那個1就是該索引對應的,依次往後類推即可

那麼我們再來說說go語言的數組

數組是具有相同唯一類型的一組已編号且長度固定的資料項序列,這種類型可以是任意的原始類型例如整形、字元串或者自定義類型。

相對于去聲明number0, number1, …, and number99的變量,使用數組形式numbers[0], numbers[1] …, numbers[99]更加友善且易于擴充。

數組元素可以通過索引(位置)來讀取(或者修改),索引從0開始,第一個元素索引為 0,第二個索引為 1,以此類推。

也就是說和JAVA類似

Go語言學習心得 -- Go語言數組

Go聲明數組的格式如下

var variable_name [SIZE] variable_type
           

eg:

var balance [10] float32
           

定義了數組 balance 長度為 10 類型為 float32:

那麼數組怎樣給他指派也就是初始化資料呢

var balance = [5]float32{1000.0, 2.0, 3.4, 7.0, 50.0}
           

在這裡大括号{}裡面有5個資料 ,【】裡面是5,也就是說

初始化數組中 {} 中的元素個數不能大于 [] 中的數字。

如果忽略 [] 中的數字不設定數組大小,Go 語言會根據元素的個數來設定數組的大小:

除非是裡面不給,給個任意的長度就像這樣

var balance = [...]float32{1000.0, 2.0, 3.4, 7.0, 50.0}
           

存放的方式就類似這種情況

Go語言學習心得 -- Go語言數組

那麼

balance[4] = 50.0
           

那麼就是說通路數組元素的話就可以這樣

var salary float32 = balance[9]
           

Demo執行個體

Go語言學習心得 -- Go語言數組

執行個體結果如下

Go語言學習心得 -- Go語言數組