GO語言入門 切片

2022-07-15 10:39:15 字數 1076 閱讀 1319

切片含義

切片的本質就是對底層陣列的封裝,它包含了三個資訊:底層陣列的指標、切片的長度(len)和切片的容量(cap)。

/*

@time : 2020-03-12 14:35

@author : ianthony

@file : main

@software: goland

*/package main

import "fmt"

func main()

s2 = string

fmt.printf("len:%d,cap:%d\n", len(s1), cap(s1))

fmt.printf("len:%d,cap:%d\n", len(s2), cap(s2))

// 將陣列切割

a1 := [...]int

b1 := a1[0:4]

fmt.println(b1)

//切片再切片

a := [...]string

fmt.printf("a:%v type:%t len:%d cap:%d\n", a, a, len(a), cap(a))

b := a[1:3]

fmt.printf("b:%v type:%t len:%d cap:%d\n", b, b, len(b), cap(b))

c := b[1:5]

fmt.printf("c:%v type:%t len:%d cap:%d\n", c, c, len(c), cap(c))

// 生成乙個切片

a2 := make(int, 2, 10)

fmt.println(a2)

fmt.println(len(a2))

fmt.println(cap(a2))

// 切片賦值

a2[1] = 2

fmt.println(a2)

var s int

var t string

fmt.println(s)

fmt.println(t)

}

Go語言切片

go語言切片 go語言切片是對陣列的抽象 go 陣列的長度不可改變,在特定場景中這樣的集合就不太適用,go中提供了一種靈活,功能強悍的內建型別切片 動態陣列 與陣列相比切片的長度是不固定的,可以追加元素,在追加時可能使切片的容量增大。宣告乙個未指定大小的陣列來定義切片 var identifier ...

go語言 切片

一 概述 low 陣列下標的起點 high 陣列下標的結束點 不包括此點 arr low arr high len 長度 high low cap 容量 max low 二 切片的長度與容量 package main import fmt func main slice arr 0 3 5 fmt....

Go語言 切片

因為陣列的長度是固定的並且陣列長度屬於型別的一部分,所以陣列有很多的侷限性。例如 func arraysum x 3 int int return sum 這個求和函式只能接受 3 int型別,其他的都不支援。再比如,a 3 int陣列a中已經有三個元素了,我們不能再繼續往陣列a中新增新元素了。切片...