【go语言从零单排2】基本知识,变量常量和控制结构

来源:互联网 发布:淘宝售假是什么意思 编辑:程序博客网 时间:2024/06/03 03:10

今天看无闻的视频,2到5讲的内容,一些摘要零星写在下面:

1. main函数作为程序入口,必须存在且在main的package里
2. type 用来声明 新的类型,struct,interface
3. import var const 等等都可以()来声明多个,但是未调用函数的话会报错,保证速度。var只能声明全局变量时使用括号,函数中声明变量不行。
4. import 可以取别名比如
    import std “fmt”
    import . “fmt” 这样就直接调用fmt的函数了
5. 约定函数名小写是私有的,开头大写是公有的。
6. bool 类型只有true和false
7. int/uint 根据平台决定32位64位,
    int8 -128~127
    uint8 0~255
    byte unit8 别名
    rune int32
    float32 float64 没有double 精确到7/15位小数
    uintptr
    其他如array struct string slice map chan inteface func
8. 类型的零值,声明后的默认值,0,false,空字符串,null  math包中有最大最小值
9. var a int = 321 此时可以省略int 自动推断
    或者 直接 b:=1 怀念pascal (:用来代替var,所以全局不能用),局部变量的多个声明时,使用a,b,c,d = 1,2,3,4这样的并行方式。
10. 空白符号_ 用来忽略复制,a,_,c:=1,2,3
11. 类型转换 b[:]=int(a), :取决于是否声明过
12. var a int = 64
    b := string(a) 输出了@
    否则引入strconv包,使用Itoa函数
13. 常量组中,不赋值的话,值就是上一行的常量表达式。且初始化规则一致,比如第一行a,b第二行必须得c,d,个数要一样
14. iota 在常量组中,每定义一个加1,从0开始
15. if 语句 不带括号,可以初始化,分号分割,左大括号必须一行
16. switch 语句灵活,但是执行完第一个符合的就跳出了,否则加fallthrough
17. goto break continue 可以配合标签使用,可以跳出多层循环

0 0