zoukankan      html  css  js  c++  java
  • 51_Go基础_1_18 切片的扩容

     1 package main
     2 
     3 import "fmt"
     4 
     5 func main() {
     6     /*
     7         切片Slice:
     8             1.每一个切片引用了一个底层数组
     9             2.切片本身不存储任何数据,都是这个底层数组存储,所以修改切片也就是修改这个数组中的数据
    10             3.当向切片中添加数据时,如果没有超过容量,直接添加,如果超过容量,自动扩容(成倍增长)
    11             4.切片一旦扩容,就是重新指向一个新的底层数组
    12 
    13         s1:3--->6--->12--->24
    14 
    15         s2:4--->8--->16--->32....
    16 
    17     */
    18     s1 := []int{1, 2, 3}
    19     fmt.Println(s1)                                 // [1 2 3]
    20     fmt.Printf("len:%d,cap:%d\n", len(s1), cap(s1)) // len:3,cap:3
    21     fmt.Printf("%p\n", s1)                          // 0xc000012180
    22 
    23     s1 = append(s1, 4, 5)
    24     fmt.Println(s1)                                 // [1 2 3 4 5]
    25     fmt.Printf("len:%d,cap:%d\n", len(s1), cap(s1)) // len:5,cap:6
    26     fmt.Printf("%p\n", s1)                          // 0xc00000a270
    27 
    28     s1 = append(s1, 6, 7, 8)
    29     fmt.Println(s1)                                 // [1 2 3 4 5 6 7 8]
    30     fmt.Printf("len:%d,cap:%d\n", len(s1), cap(s1)) // len:8,cap:12
    31     fmt.Printf("%p\n", s1)                          // 0xc00001a0c0
    32 
    33     s1 = append(s1, 9, 10)
    34     fmt.Println(s1)                                 // [1 2 3 4 5 6 7 8 9 10]
    35     fmt.Printf("len:%d,cap:%d\n", len(s1), cap(s1)) // len:10,cap:12
    36     fmt.Printf("%p\n", s1)                          // 0xc00001a0c0
    37 
    38     s1 = append(s1, 11, 12, 13, 14, 15)
    39     fmt.Println(s1)                                 // [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15]
    40     fmt.Printf("len:%d,cap:%d\n", len(s1), cap(s1)) // len:15,cap:24
    41     fmt.Printf("%p\n", s1)                          // 0xc000108000
    42 }
  • 相关阅读:
    简单粗暴,微生物生态研究中常用数据库简介--转载
    sliva数据库简介--转载
    DriverDBv2---人类肿瘤driver基因数据库
    lncrnablog
    胞外囊泡与外泌体数据库--转载
    Oncomine: 一个肿瘤相关基因研究的数据库--转载
    circRNA研究手册
    常用Gene ID转换工具--转载
    miRNA几大常用的数据库
    zk使用通知移除节点
  • 原文地址:https://www.cnblogs.com/luwei0915/p/15625412.html
Copyright © 2011-2022 走看看