陣列長度指定之後,不可修改。[...]
會自行推斷陣列長度。
var arr = [...]int
指定索引值來初始化陣列。
arr := [...]int
輸出:
[1 20 20 0 0 50]
基本資料型別和陣列都是值型別,&
是引用型別。
golang 中申明切片之後,切片預設值就是nil
。
len()
取長度,cap()
求切片的容量。
定義切片的時候,把陣列長度去掉。
var arr int
擴容策略
copy() 函式
值型別,改變變數副本值不會影響變數本身的值。(陣列、基本資料型別)
引用資料型別,改變變數副本值會影響變數本身的值。(切片)
copy(sliceb, slicea)
golang 沒有刪除切片元素的專用方法,可以使用切片本身特性刪除元素。
sort 包排序
// 公升序
sort.ints(intlist)
sort.float64s(float8list)
sort.strings(stringlist)
// 降序
sort.sort(sort.reverse(sort.intslice(intlist)))
sort.sort(sort.reverse(sort.float64slice(float8list)))
sort.sort(sort.reverse(sort.stringslice(stringlist)))
golang 教程 p17-p21 Go學習筆記 陣列和切片
陣列型別的值 以下簡稱陣列 的長度是固定的,而切片型別的值 以下簡稱切片 是可變長的。陣列的長度在宣告它的時候就必須給定,並且在之後不會再改變。可以說,陣列的長度是其型別的一部分。go 語言的切片型別屬於引用型別,同屬引用型別的還有後面會講到的字典型別 通道型別 函式型別等 而 go 語言的陣列型別...
Go學習筆記 陣列和切片
陣列 陣列是具有相同唯一型別的一組已編號且長度固定的資料項序列 同構的資料結構 這種型別可以是任意的原始型別,例如整型 字串或者自定義型別。陣列長度必須是乙個常量表示式,並且必須是乙個非負整數。陣列成都也是陣列型別的一部分,所以 5 int和 10 int是屬於不同型別的。陣列是一種值型別。陣列的編...
go陣列 切片
陣列 陣列指標 fmt.println 陣列指標 i int var p 10 int i fmt.println p fmt.println p x,y 1,2 j int fmt.println j k 2 int l 2 int fmt.println k l 指向陣列的指標 m new 5 ...