zoukankan      html  css  js  c++  java
  • 1.2 学习笔记之数据类型

    整数、数组与切片代码示例

    package main
    var a = "鱼只有七分钟的记忆吗?"
    var b uint16= 65534
    var c bool = true
    var arr1 = [4]uint8{192,168,0,1}
    var arr2 = [...]uint8{192,168,0,2}
    var slic1= []string{"192.168.0.1","192.168.0.2"}
    var slic2=append(slic1,"192.168.0.3")
    var slic3=make([]string,50)
    
    func main(){
       println(a,b,c)
       println(len(arr1),cap(arr2),len(slic2),cap(slic3))
    }

    输出

    鱼只有七分钟的记忆吗? 65534 true
    4 4 3 50

    重点

    uint8 0-255,int8则是-128-127,这两个是Go的最小长度类型,其他类型在内存中分配的长度都要比这两个大;

    其他整数类型,将8替换为16,32,64即可,可用于详细规划内存

    ...,三个小黑点,由Go编译器计算该值的元素数量并以此获得其长度,也适用于函数参数

    append可以为切片类型[]string追加元素

    make可以高效地为一个切片初始化数据,make([]string,50)则是一次性初始化50个默认值为""的元素

    map代码示例

    package main
    var m1 = map[string]bool{}
    
    func main(){
       m1["魔镜,我是世界上最美的女人吗"]= false
       println(m1["魔镜,我是世界上最美的女人吗"])
       println(len(m1))
       delete(m1,"魔镜,我是世界上最美的女人吗")
       println(len(m1))
       delete(m1,"魔镜,我是世界上最美的女人吗")
       println(len(m1))
    }

    delete可以删除本身就不存在的元素,输出

    false
    1
    0
    0
  • 相关阅读:
    LOJ3160 「NOI2019」斗主地
    常系数齐次线性递推
    最小树形图——朱刘算法学习小记
    Linux系统分区(一)
    Linux系统启动过程(二)
    Linux系统目录结构(三)
    cross_val_score
    sklearn.pipeline.Pileline
    DBSCAN密度聚类算法
    特征选择
  • 原文地址:https://www.cnblogs.com/perfei/p/10265873.html
Copyright © 2011-2022 走看看