golang陣列切片
阿新 • • 發佈:2022-03-24
一、陣列初始化方式
- var [length]Type
var array [5]int //這種方式,只是初始化,不帶初始化值,陣列長度,已經定義好, 但是其實初始化的值,已經有了並且是該型別的最小值(bool false),int 0, string ' ' 其他,自行驗證
- var [N]Type{value1, value2, ... , valueN}
var array = [5]int{1, 2, 3, 4, 5} // 這種方式,既初始化變數,又帶了初始化值,陣列長度已經定義好
- var [...]Type{value1, value2, ... , valueN}
var array = [...]int{1, 2, 3, 4, 5} // 這種方式,既初始化變數,也是帶了初始值,陣列長度,根據初始值的個數而定,也就是五個
- :=[N]Type{value1, value2, ... , valueN}
array :=[5]int{1, 2, 3, 4, 5} // 這種方式,省去 var 關鍵詞,將初始化變數和賦值,放在一起操作,這種方式簡單,明瞭。
- := [...]Type{value1, value2, ... , valueN}
array := [...]int{1, 2, 3, 4, 5} // 這種方式,既初始化變數,也是帶了初始值,陣列長度,根據初始值的個數而定,也就是五個
二、切片初始化方式
- make ( []Type ,length, capacity )
slice := make([]int, 3, 5)
- make ( []Type, length)
slice := make([]int, 5)
- []Type{}
slice := []int{}
- []Type{value1 , value2 , ... , valueN }
slice := []int{1, 2, 3, 4, 5} // 這種方式,len是根據初始化長度而定的