goland创建一个不限长度的字节切片_Go语言入门必知教程-切片
切片是一種靈活的和可擴展的數據結構,用于實現和管理數據集。切片由多個元素組成,所有元素都是相同類型的。切片是動態數組的一部分,可以根據需要進行增長和收縮。與數組一樣,切片也可以索引。切片具有容量和長度屬性。
使用聲明創建切片
要變量切片類型的變量,使用一對空方括號,后跟切片將保存的元素類型:
結果:
slice
slice
空切片容量和長度都為0。
使用初始化聲明創建切片
slice字面量對切片變量初始化,包括空方括號,后跟slice元素的類型,以及大括號內每個元素的初始值列表,初始值列表的個數決定切片容量和長度:
結果:
intSlice Len: 4 Cap: 4
strSlice Len: 3 Cap: 3
使用Make函數創建切片
切片可以使用內置函數make創建。使用make時,第一個參數是切片的類型,第二個參數指定切片的長度,第三個參數指定切片的容量。如果只指定長度,則切片的容量與長度相同。
結果:
intSlice Len: 10 Cap: 10
slice
strSlice Len: 10 Cap: 20
slice
使用new關鍵字創建切片
可以使用new關鍵字和方括號聲明切片,方括號中的值表示切片容量,后面跟著切片元素的類型,最后指定的長度。
代碼4:
結果:
slice
intSlice Len: 10 Cap: 50
[0 0 0 0 0 0 0 0 0 0]
添加切片元素
使用內置函數append()方法添加元素到切片末尾
結果:
Slice A: [10 20]
Length is 2 Capacity is 5
Slice A after appending data: [10 20 30 40 50 60 70 80 90]
Length is 9 Capacity is 12
如果切片中有足夠的容量,則元素將放在最后一個元素之后,長度將遞增。但是,如果沒有足夠的容量,則創建一個新的切片,所有已有元素都被復制,新的元素則添加到末尾,返回新的切片。
訪問切片元素
通過索引數字訪問切片的元素:
修改切片元素的值
通過索引數字修改切片元素的值:
結果:
[Iindia Canada China]
[Iindia Canada Germany]
刪除切片元素
通過定義函數功能刪除切片中的元素
結果:
[Iindia Canada China Germany Italy]
[Iindia Canada China Italy]
復制切片元素
使用內置函數copy把切片元素復制到另一個切片
結果:
[Slice:A] Length is 3 Capacity is 3
[Slice:B] Length is 5 Capacity is 10
Slice B after copying: [5 6 7 0 0]
Slice B after adding elements: [5 6 7 8 9]
截取切片元素
截取切片元素可以訪問切片部分數據
結果:
Countries: [Iindia China Canada Australia Russia]
:2 [Iindia China]
1:3 [China Canada]
2: [Canada Australia Russia]
2:5 [Canada Australia Russia]
0:3 [Iindia China Canada]
Last element: Russia
Last element: Russia
Last element: [Russia]
All elements: [Iindia China Canada Australia Russia]
Last two elements: [Australia Russia]
Last two elements: [Australia Russia]
[Iindia China Canada Australia Russia]
[Iindia China Canada Australia Russia]
[Iindia China Canada Australia Russia]
遍歷切片元素
使用for循環遍歷切片所有元素:
合并切片
使用三點省略號合并兩個切片
結果:
slice1: [Iindia China Canada ]
Before slice2: [Australia Russia]
After slice2: [Australia Russia Iindia China Canada]
檢測元素切片是否存在
遍歷切片元素用if條件語句檢測元素:
總結
以上是生活随笔為你收集整理的goland创建一个不限长度的字节切片_Go语言入门必知教程-切片的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三菱e68系统程序传输_盘点那些年用过的
- 下一篇: iqc工作职责和工作内容_猎头如何辨识工