go中的切片可對標python中的切片,是對陣列的抽象,可以理解為動態陣列,可通過乙個不指定大小的陣列來宣告乙個切片
go中切片的幾種常用語法的示例程式如下:
一、通過make函式定義切片及使用len()和cap()函式
例項:
package main
import "fmt"
func main()
func printslice(x int)
執行結果:
二、 切片未初始化時為空(即等於nil)
例項:
package main
import "fmt"
func main()
}func printslice(x int)
執行結果:
三、切片擷取
例項如下:
package main
import "fmt"
func main()
printslice(numbers)
//列印原始切片
fmt.println("numbers == ", numbers)
//列印子切片從索引1(包含)到索引4(不包含)
fmt.println("numbers[1:4] == ", numbers[1:4])
//預設下限為0
fmt.println("numbers[:3] == ", numbers[:3])
//預設上限為len(s)
fmt.println("number[4:] == ", numbers[4:])
numbers1 := make(int,0,5)
printslice(numbers1)
//列印子切片從索引0(包含)到索引2(不包含)
number2 := numbers[:2]
printslice(number2)
//列印子切片從索引2(包含)到索引5(不包含)
number3 := numbers[2:5]
printslice(number3)
}func printslice(x int)
執行結果:
四、切片增加元素與擴容
當需要對切片進行擴容時,只能通過定義乙個新的切片,然後將原來的切片通過copy()函式拷貝到新的切片中
例項如下:
package main
import "fmt"
func main()
func printslice(x int)
執行結果:
Go語言基礎 切片
切片 slice 是乙個擁有相同型別元素的可變長度的序列。它是基於陣列型別做的一層封裝。它非常靈活,支援自動擴容。切片是乙個引用型別,它的內部結構包含位址 長度和容量。切片一般用於快速地操作一塊資料集合。陣列的長度是固定的並且陣列長度屬於型別的一部分,所以陣列有很多的侷限性。1 func array...
go語言基礎 切片 slice
理解為變長的陣列 a 切片建立 s1 int s2 make t,len,cap arr 5 int s3 arr start end 切割陣列 start,end s4 arr b 切片的型別 資料型別 切片屬於引用型別 s1 int s2 s1 packagemain import fmt fu...
go語言基礎之切片
1 切片的長度和容量 流程分析 示例 package main 必須有個main包 import fmt func main s a 0 3 5 fmt.println s s fmt.println len s len s 長度 3 0 fmt.println cap s cap s 容量 5 0...