• 6.golang 数组,切片,映射


    package main

    import "fmt"

    /*
    数组是一个重要构建,定义数组并制定长度和数据类型 arr [10]int,数组一般存储使用数字做索引的数据
    数组的固定以后不可以任意追加,数组声明的时候必须制定长度,或者 用 arr:=[]string{"z","d","c"}
      数组索引从0开始,且索引只能是数字
    */


    /*
    切片:就是可以任意删减的数组
    切片是底层数组中的一个连续片段,注意连续的意思就是切片不能"跳跃赋值",切片比数组灵活,数组不能任意添加元素
    切片可以新增,删除,复制切片中元素,可将切片视为轻量级的数组包装器
    切片申明 :make 关键字 make( []string,2) ,切片可以通过append追加到尾部,只能通过下标访问值
       var cc = make([]string,2) make创建一个切片,第一个参数是数据类型,第二个参数是长度,len(cc)查看切片长度
      切片的索引也只能是数字类型的,且是连续的
      添加:var c:=make([]string,2) ; cc = append(cc,"I","love","you","too")
      删除就是截取 cc = cc[:2] 从0开始截取3个
             cc = cc[1:] 从下标1截取到尾,包含下标1
             cc = cc[1:2] 从下标1截取下标2,包含下标1至下标2之前的元素
      切片复制: copy(cc1,cc2) ,把切片cc2的值复制给cc1
    */

    /*
    映射: 就是kv模式的键值对数组,可以通过key访问value,在其他语言中 映射被称为关联数组,字典或散列
    申明:make(map[string]int)
    golang是静态语言,因为有映射功能又像python动态语言,而不像C语言的方面之一
      var play = make(map[string]string) 声明一个空映射
        play['bto']='on'
        play['fto']='off'
      删除: delete(play,"bto")
    */

    func main() {
    //var arr [2]string
    //var arr1 [10]int
    //var arr2 []int
    //var arr3 []string
    //arr[0] = "hello"
    //arr[1] = "world"
    //fmt.Println(arr, arr1, arr2, arr3)

    //buildSlice()
    buildMap()
    }

    func buildSlice() {
    var arr = make([]string, 2)
    arr[0] = "hello"
    arr[1] = "world" //这里的切面是连续的,不能直接给arr[10]赋值
    arr = append(arr, "china") //append 给切片追加值
    arr = append(arr, "china1")
    arr = append(arr, "china2")
    arr = append(arr, "china3", "china4", "china5")
    arr = append(arr[:3]) // 删除切面,只获取切片的前3个元素
    var tt = make([]string,1)
    copy(tt,arr) //复制切片,且只复制到tt的长度
    fmt.Println(arr,tt)
    }

    func buildMap(){
    var tt = make(map[string]int)
    tt["name"] = 10
    tt["age"] = 21 //添加元素
    //delete(tt,"age"); //删除元素
    fmt.Println(tt,tt["name"])
    }










  • 相关阅读:
    Leetcode No.121
    Leetcode No.97 ***
    (描述需要改进) Leetcode No.71 **
    (描述需要改进)Leetcode No.68 **
    Leetcode No.72 ***
    【笔记】存储位置/修改表/字符集.【3(完结创建表)】
    redis 事件驱动模型解析
    redis 官网文档学习笔记 简单翻译
    redis 官网文档 sentinel 简单翻译 && 简单总结QA
    redis 学习笔记 总
  • 原文地址:https://www.cnblogs.com/iifeng/p/11486259.html
Copyright © 2020-2023  润新知