1. 程式人生 > 其它 >golang陣列切片

golang陣列切片

一、陣列初始化方式

  • 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是根據初始化長度而定的