zoukankan      html  css  js  c++  java
  • [学习笔记]Golang--基础数据类型

    1,不同类型的变量不能互相赋值或者操作,如
    var a int8 = 16
    var b int = 23
    c := a + b

    会报错,且int虽然默认32位,但和int32是不同的类型

    iota只在声明枚举时有用

    2、数组声明:
    array:
    var arr [5]int 长度为5,元素默认值为0,通过下标访问,如arr[2]
    省略长度赋值法 var arr := […]int{1,2,3,4,5}
    数组之间赋值是值赋值,所以函数传数组,是一个拷贝

    slice:其实是数组的引用,保存的是数组指针
    var arr [5]int{1,2,3,4,5}
    sliceB := arr[1,3]
    sliceB中即包含arr[1],arr[2],但不包括arr[3]

    slice方法:
    len:获取长度
    cap:获取容量
    append:追加元素,由于是引用类型,会改变底层数组的值,如果超过容量,会新开辟一个数组
    copy:拷贝一个slice的元素到另一个slice,并返回拷贝的元素个数

    map:
    var numbers map[string] int
    numbers := make(map[string]int)

    map是无序的,每次打印都不一样,所以只能通过key取,不能通过index取
    map长度不固定,跟slice一样,为引用类型
    delete(numbers,”one”) // 删除key为one的元素

    make初始化内部结构,并填充适当的值,返回初始化后(非零)值
    new 返回结构的指针

  • 相关阅读:
    imagemagick 批量旋转图片 转为横版式
    visual studio 2008 编译 filezilla
    BackgroundWorker 类
    序列化
    打工才是最愚蠢的投资
    常用汇编指令缩写(方便记忆)
    PIC中档单片机汇编指令详解(1)
    Win8之自动登录
    PIC单片机汇编指令
    好文转载—程序员的禅修之路
  • 原文地址:https://www.cnblogs.com/left69/p/11730863.html
Copyright © 2011-2022 走看看