美文网首页
Go学习--基本类型

Go学习--基本类型

作者: liuxuech | 来源:发表于2016-10-30 02:28 被阅读0次

    1、布尔型: bool

    取值范围:true/false

    注意:不能 用数字0或者空来代表false 或者说 用非零来代表true

    2、整形:

    int(有符号整形)/uint(无符号整形)

    注意事项:整形是多少位取决于平台,即平台上32位则整形也就是32位的

    8位整形:int8/uint8  

    取值范围:-128~127/0~255

    注意:还有16位整形、32位整形、64位整形有符号和无符号

    字节型:byte(unit8的别名)

    取值范围:0~255

    注意:还有一个别名“rune”,它是int32位的别名

    3、浮点型

    float32/float64

    注意:精确位数--float32精确到7位小数,float64精确到15位小数

    4、复数:complex64/complex128

    5、其他值类型:

    array、struct、string

    6、引用类型:

    slice、map、chan(通道用到)

    7、接口类型:

    interface

    8、函数类型:

    func

    9、类型的零值:

    值类型的零值:0;布尔类型的零值:false;string类型的零值:空字符串;引用类型的零值:nil

    10、类型最大值和最小值的获得:

    导入math包 ep:  int32的最大值math.MaxInt32:,最小值:math.MinInt32, 其他类型同理

    11、变量的声明:

    情况1:先声明,后面再赋值

    注意:必须  var name string  , 不能 var name

    name = "lxc"

    情况2:全局变量的声明)

    可以是:var name string = "lxc" , 或者是 var name string(后面赋值) 再或者是 var name = "lxc" , 绝对不能是 name :=  "lxc"

    情况3:变量最简写法

    name := "lxc"

    12、变量的类型转换:

    注意:Go语言中所有的类型转换都必须显示的。 转换只发生在两种相互兼容的类型之间。比如:

    var s float32 = 10.11

    var ss string = "10.11"

    var flag = true

    b := int(s)  //10

    c := int(ss)  //cannot convert(转换) ss (type string) to type int ,但是可以通过: c,err := strconv.Atoi(ss)

    d := int(flag) //cannot convert flag (type bool) to type int

    特别注意:

    type newInt int  

    此时:用newInt和int声明的变量如果之间发生赋值操作,则需要进行显示的转换。

    ep:

    type newInt int

    var age newInt = 10

    var num int = 12

    age = newInt(num)  //这里必须使用newInt进行显示转换

    而:  byte(uint8)和rune(int32)则不需要

    13、查看一个变量的类型的方式:

    var name string = "lxc"

    fmt.Printf("%T", name)  //string

    相关文章

      网友评论

          本文标题:Go学习--基本类型

          本文链接:https://www.haomeiwen.com/subject/zznyuttx.html