陣列是值型別
宣告陣列
var variable_name [size] variable_type
var array1 [10]float32
array2 := [3]int
array3 := [...]int
var grid [4][5]bool
複製**
定義切片
你可以宣告乙個未指定大小的陣列來定義切片:
var identifier type //切片不需要說明長度。
var slice1 type = make(type, len) //使用make()函式來建立切片
//也可以簡寫為
slice1 := make(type, len)
make(t, length, capacity)
//也可以指定容量,其中capacity為可選引數。這裡 len 是陣列的長度並且也是切片的初始長度。
複製**
s := int
直接初始化切片,表示是切片型別,初始化值依次是1,2,3.其cap=len=3
s := arr[:]
初始化切片s,是陣列arr的引用
s := arr[startindex:endindex]
將arr中從下標startindex到endindex-1 下的元素建立為乙個新的切片
s := arr[startindex:]
預設endindex時將表示一直到arr的最後乙個元素
s := arr[:endindex]
預設startindex時將表示從arr的第乙個元素開始
s1 := s[startindex:endindex]
通過切片s初始化切片s1
s :=make(int,len,cap)
通過內建函式make()初始化切片s,int 標識為其元素型別為int的切片
空切片乙個切片在未初始化之前預設為 nil,長度為 0
var numbers int
if(numbers == nil)
複製**
切片操作函式定義 map
可以使用內建函式 make 也可以使用 map 關鍵字來定義 map:
/* 宣告變數,預設 map 是 nil */
var map_variable map[key_data_type]value_data_type
/* 使用 make 函式 */
map_variable = make(map[key_data_type]value_data_type)
複製**
m := map[string]string
m2 = make(map[string]int)
var m3 map[sting]int
複製**
m2,m3都是nil map。如果不初始化 map,那麼就會建立乙個 nil map。nil map 不能用來存放鍵值對
delete() 函式
delete() 函式用於刪除集合的元素, 引數為 map 和其對應的 key
Golang 內建函式
golang中內建了一些函式,在使用這些函式時,不必以包名為字首來呼叫,而是直接寫函式名即可呼叫,這些函式都是一些基礎的函式,在程式設計中應用比較普遍,所以一定要牢記這些最基本的函式用法。下邊來介紹一下golang內建函式。package main import fmt func main func...
golang 內建函式
golang有一些不需要進行匯入操作即可使用的內建函式,函式功能 close 用於管道通訊,關閉chanal len cap len 用於返回某個型別的長度或數量 字串 陣列 切片 map 管道 cap用於返回某個型別的最大容量 只能用於切片和 map new make new 和 make 均是用...
go內建容器
陣列 array 切片 slice 對比一下可以發現,唯一的區別就在於,陣列是使用 5 int 來進行初始化,而 slice 是使用 int。在go中,我們經常使用slice。slice的特點是,長度是可以改變的,也就是說,我們可以無限追加元素到slice中。其他特點slice與陣列並無區別。map...