六 Golang學習筆記 結構體

2021-10-14 08:09:02 字數 2455 閱讀 8990

應用場景:儲存人員的詳細資訊,例如編號、姓名、性別等

概念:由一些列具有相同型別或不同型別的資料構成的資料集合,方便管理資料,提高程式易讀性

func

main()

//順序初始化

var s student = student

fmt.

println

(s)//部分成員初始化

var s1 student = student

//通過」結構體變數.成員「初始化

var stu student

stu.id =

102 stu.name =

"老王"

stu.age =

28 stu.addr =

"北京"

}

//結構體陣列定義

type student struct

func

main()

, student

, student,}

//型別是結構體

fmt.

println

(arr)

fmt.

println

(arr[0]

) fmt.

println

(arr[0]

.age)

//輸出第一項某個成員

//成員值修改

arr[0]

.age =

20//覆蓋張三年齡

//通過迴圈輸出結構體陣列中的內容

for i:=

0;i<

len(arr)

;i++

for k,v :=

range arr

}

//結構體切片定義

type student struct

func

main()

, student,}

//型別是結構體

fmt.

println

(s) fmt.

println

(s[0])

fmt.

println

(s[0

].age)

//輸出第一項某個成員

//成員值修改

s[0]

.age =

20//覆蓋張三年齡

//通過迴圈輸出結構體切片中的內容

for i:=

0;i<

len(s)

;i++

for k,v :=

range s

(s,student

)}

//結構體map定義

type student struct

func

main()

m[2]

= student

fmt.

println

(m) fmt.

println

(m[1])

//取第乙個資料

fmt.

println

(m[1

].name)

//列印成員

//通過迴圈輸出結構體陣列中的內容

for key,value :=

range m

//成員值修改

arr[0]

.age =

20//覆蓋張三年齡

//通過迴圈輸出結構體陣列中的內容

for i:=

0;i<

len(arr)

;i++

//delete函式

delete

(m,2

)//刪除第二個學生

}

type student struct

func

main()

printdemo

(stu)

}func

printdemo

(stu student)

//案例 輸出年齡最大的詳細資訊

type student struct

func

main()

func

initdata

(stu [

]student)

}func

getmax

(stu [

]student)

} fmt.

println

(stu[maxindex]

)}

:在函式中修改結構體中的值,原結構體中的值不會發生改變

Golang學習筆記 六 結構體

結構體與陣列一樣,屬於聚合型別,結構體可以包含零個或任意個型別的值。而這些值則稱為結構體的成員。結構體使用struct關鍵字進行定義宣告,下列 中宣告乙個名稱為user結構體,用於表示乙個使用者資訊,宣告結構體後,便可以用於定義結構體變數。type user struct 複製 定義好結構體後,便可...

Golang學習筆記 13 結構體

go 語言中陣列可以儲存同一型別的資料,但在結構體中我們可以為不同項定義不同的資料型別。結構體是由一系列具有相同型別或不同型別的資料構成的資料集合。結構體表示一項記錄,比如儲存圖書館的書籍記錄,每本書有以下屬性 title 標題 author 作者 subject 學科 id 書籍id type s...

Golang 學習 結構體

結構體定義 結構體是一種資料型別。定義型別 地位等價於 int byte bool string.通常放在全域性位置 type person struct 注意 結構體內不能賦初值,不能用 var 修飾。普通變數定義和初始化 普通變數的賦值和使用 使用 索引成員變數。var man person m...