Golang基礎編程(三)-結構體、數組


一、結構體

·Go 語言中數組可以存儲同一類型的數據,但在結構體中我們可以為不同項定義不同的數據類型。

·結構體是由一系列具有相同類型或不同類型的數據構成的數據集合

結構體-定義

結構體定義需要使用 type 和 struct 語句。struct 語句定義一個新的數據類型,結構體中有一個或多個成員。type 語句設定了結構體的名稱。結構體的格式如下:

type struct_variable_type struct {
   member definition
   member definition
   ...
   member definition
}

一旦定義了結構體類型,它就能用於變量的聲明,語法格式如下:

variable_name := structure_variable_type {value1, value2...valuen}
或
variable_name := structure_variable_type { key1: value1, key2: value2..., keyn: valuen}

結構體-示例

輸出結果:

Book 1 title : Go 語言

Book 1 author : Go 作者

Book 1 author : Go語言教程

Book 1 book_id : 64425

二、數組

數組是具有相同唯一類型的一組已編號且長度固定的數據項序列。

Go 語言數組聲明需要指定元素類型及元素個數,語法格式如下:

var variable_name [SIZE] variable_type

以上為一維數組的定義方式。例如以下定義了數組 balance 長度為 10 類型為 float32:

var balance [10] float32

數組-初始化:

1.以下演示了數組初始化:

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

2.我們也可以通過字面量在聲明數組的同時快速初始化數組:

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

3.如果數組長度不確定,可以使用 ... 代替數組的長度,編譯器會根據元素個數自行推斷數組的長度:

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

4.如果設置了數組的長度,我們還可以通過指定下標來初始化元素:

//  將索引為 1 和 3 的元素初始化
balance := [5]float32{1:2.0,3:7.0}

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

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

balance[4] = 50.0

數組-訪問元素

數組元素可以通過索引(位置)來讀取。格式為數組名后加中括號,中括號中為索引的值。例如:

var salary float32 = balance[9]

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

輸出結果:

4 [1 2 3 4 5] [1 2 3 4 5] [d b c] [1 2 3 4 5]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM