Hike News
Hike News

Golang物件導向初識-day13-結構體(struct)

introduction 用來自定義複雜的數據結構,亦為一種自定義的類型(與golang自帶的int,string,map類型等價) struct可以包含多個字段,或稱屬性 struct類型可以定義方法,須注意和函數的區分 struct類型屬於值類型,因此要修改struct中的值,必須傳入指針 struct之間可以嵌套,自定義的struct中可再包含其他struct類型 Golang中沒有class類型,只有struct類型 可將struct類型當作class類型使用

Continue Reading →

Go初識-day11-切片

introduction定義:切片為陣列的引用,因此切片為引用類型 切片本身並不會單獨存在,切片的底層就是陣列 切片的長度可以改變,可將切片視為可變陣列 切片的遍歷方式與陣列一樣 切片長度與陣列一樣可用len函數取得 cap函數可以求出切片的容量,0 ≦ len(array) ≦ cap(slice) array是指被引用的陣列

Continue Reading →

Go初識-day10-陣列(Array)

introduction定義:有固定長度且裏頭的每個元素都為同一種數據類型之序列 陣列屬於值類型 長度是陣列類型的一部分,不同長度的陣列即使內部元素類型相同,仍為不同類型例如: 12var a [5]intvar b [10]int a,b兩變量為不同類型,因此也不能比較 陣列的index皆為0開始,最後一個元素的index為len-1 如果訪問的index在陣列合法範圍之外,會觸發訪問越界,丟出panic

Continue Reading →

Go初識-day10-閉包(closure)

introduction閉包可以用來在一個函式與一組「私有」變數之間建立關聯關係。在給定函式被多次呼叫的過程中,這些私有變數能夠保持其永續性。變數的作用域僅限於包含它們的函式,因此無法從其它程式代碼部分進行存取。不過,變數的生存期是可以很長,在一次函式呼叫期間所建立所生成的值在下次函式呼叫時仍然存在 一個函數和與其相關的引用環境組合而成的實體

Continue Reading →

Go初識-day9-內置函數

內置函數內置函數可以直接使用,且不需要導入特定的package close: 主要用來關閉channel len: 用來求長度,比如sting,array,slice,map,channel new: 用來分配內存,主要用來分配值類型,比如int,struct等基本類型,返回的是指針(注意!!) make: 用來分配內存,主要用來分配引用類型,比如channel,map,slice等 append:用來追加元素到slice中 panic和recover: 用來作錯誤處理

Continue Reading →