首页 > 编程语言 > 详细

GO语言入门 - 切片

时间:2020-03-12 18:27:11      阅读:78      评论:0      收藏:0      [点我收藏+]

切片含义

切片的本质就是对底层数组的封装,它包含了三个信息:底层数组的指针、切片的长度(len)和切片的容量(cap)。

切片练习题

/*
@Time : 2020-03-12 14:35
@Author : ianthony
@File : main
@Software: GoLand
*/
package main

import "fmt"

func main() {

    // 定义一个切片
    var s1 []int
    var s2 []string

    // 切片初始哈
    s1 = []int{1, 2, 3}
    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{1, 2, 3, 4, 5, 6, 7, 8, 445, 631}
    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
    s = append(s, 1, 2, 3, 4)
    t = append(t, "一", "二", "三")
    fmt.Println(s)
    fmt.Println(t)
}

GO语言入门 - 切片

原文:https://www.cnblogs.com/ipyanthony/p/12470001.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!