在Go编程语言中,数据类型用来声明函数和变量。

数据类型的出现是为了把数据分成所需要内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。

布尔型:bool

  • 长度:1字节

  • 取值范围:true, false

  • 注意事项:不可以用数字代表true或false;不能接受其他类型的赋值,不支持自动或强制的类型转换。

整型:int/uint

根据运行平台可能为32或64位

8位整型:int8/uint8

  • 长度:1字节

  • 取值范围:-128255

字节型:byte

uint8别名

16位整型:int16/uint16

  • 长度:2字节

  • 取值范围:-3276865535

32位整型:int32(rune)/uint32

  • 长度:4字节

  • 取值范围:-232/2-1/0~2^32-1

64位整型:int64/uint64

  • 长度:8字节

  • 取值范围:-264/2-1/0~2^64-1

浮点型:float32/float64

  • 长度:4/8字节

  • 小数位:精确到7/15小数位

Go基本类型 - 图1

复数:complex64/complex128

  • 长度:8/16字节

Go基本类型 - 图2

足够保存指针的 32 位或 64 位整数型

uintptr

其它值类型

  • array、struct、string
    引用类型:

  • slice、map、chan

接口类型

  • inteface

    函数类型

  • func

类型零值

零值并不等于空值,而是当变量被声明为某种类型后的默认值,通常情况下值类型的默认值为0,bool为false,string为空字符串

类型别名

Go基本类型 - 图3


Go基本类型 - 图4