<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                <p align="right">2021年08月31日 13:54:49</p> [TOC] 1. 切片:切片是數組的一個引用,是引用類型。但自身是結構體,值拷貝傳遞 2. 切片的長度可以改變,因此,切片是一個可變的數組 3. 切片遍歷方式和數組一樣,可以用len()求長度。表示可用你袁術數量,讀寫操作不能超過該限制 4. cap可以求出slice最大擴張容量,不能超出數組限制。 5. `0 <= len(slice) <= len(array)`,其中array是slice引用的數組 6. 切片的定義:`var 變量名 []類型`,例如`var str []string`、`var arr []int` 7. 如果`slice == nil`, 那么len、cap的結果都等于0 ## 創建切片 標準聲明 ``` var s1 []int ``` 通過類型推斷 ``` s2 := []int{} ``` 通過make函數 ``` var s3 []int = make([]int, 0) ``` 初始化賦值 ``` var s4 []int = make([]int, 0, 0) s5 := []int{1, 2, 3, 4, 5} s6 := s5[1:4] // 通過數組切片,前包后不包,{2,3,4} ``` ## 切片初始化 | 操作 | 含義 | | --- | --- | | s[n] | 切片s中年索引位置為n的項 | |s[:]|從切片s的索引位置0到len(s)-1處所獲得的切片| |s[low:]|從切片s的索引位置low到len(s)-1處所獲得的切片| |s[:high]|從切片s的索引位置0到high處所獲得的切片, len=high| |s[low:high]|從切片s的索引位置low到high處所獲得的切片,len=high-low| |s[low:high:max]|從切片s的索引位置low到high處所獲得的切片,len=high-low,cap=max-low| |len(s)|切片s的長度,總是<=cap(s)| |cap(s)|切片s的長度,總是>=len(s)| 代碼示例 ``` package main import ( "fmt" ) var arr = [...]int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} var slice0 []int = arr[2:8] var slice1 []int = arr[0:6] //可以簡寫為 var slice []int = arr[:end] var slice2 []int = arr[5:10] //可以簡寫為 var slice[]int = arr[start:] var slice3 []int = arr[0:len(arr)] //var slice []int = arr[:] var slice4 = arr[:len(arr)-1] //去掉切片的最后一個元素 func main() { fmt.Printf("全局變量:arr %v\n", arr) fmt.Printf("全局變量:slice0 %v\n", slice0) fmt.Printf("全局變量:slice1 %v\n", slice1) fmt.Printf("全局變量:slice2 %v\n", slice2) fmt.Printf("全局變量:slice3 %v\n", slice3) fmt.Printf("全局變量:slice4 %v\n", slice4) fmt.Printf("-----------------------------------\n") arr2 := [...]int{9, 8, 7, 6, 5, 4, 3, 2, 1, 0} slice5 := arr[2:8] slice6 := arr[0:6] //可以簡寫為 slice := arr[:end] slice7 := arr[5:10] //可以簡寫為 slice := arr[start:] slice8 := arr[0:len(arr)] //slice := arr[:] slice9 := arr[:len(arr)-1] //去掉切片的最后一個元素 fmt.Printf("局部變量: arr2 %v\n", arr2) fmt.Printf("局部變量: slice5 %v\n", slice5) fmt.Printf("局部變量: slice6 %v\n", slice6) fmt.Printf("局部變量: slice7 %v\n", slice7) fmt.Printf("局部變量: slice8 %v\n", slice8) fmt.Printf("局部變量: slice9 %v\n", slice9) } ``` 輸出結果 ``` 全局變量:arr [0 1 2 3 4 5 6 7 8 9] 全局變量:slice0 [2 3 4 5 6 7] 全局變量:slice1 [0 1 2 3 4 5] 全局變量:slice2 [5 6 7 8 9] 全局變量:slice3 [0 1 2 3 4 5 6 7 8 9] 全局變量:slice4 [0 1 2 3 4 5 6 7 8] ----------------------------------- 局部變量: arr2 [9 8 7 6 5 4 3 2 1 0] 局部變量: slice5 [2 3 4 5 6 7] 局部變量: slice6 [0 1 2 3 4 5] 局部變量: slice7 [5 6 7 8 9] 局部變量: slice8 [0 1 2 3 4 5 6 7 8 9] 局部變量: slice9 [0 1 2 3 4 5 6 7 8] ``` ## 通過make創建切片 ``` var slice []type = make([]type, len) slice := make([]type, len) slice := make([]type, len, cap) ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看