Go语言-数据类型

在 Go 编程语言中,数据类型用于声明函数和变量。数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。
Go语言中数据类型大体分为两类:基本数据类型和派生数据类型

基本数据类型

基本数据类型分为:数值型、布尔型和字符串。

数值型

整型
类型 描述 范围 占用空间
int8 有符号 8 位整型 -128 到 127 1字节
int16 有符号 16 位整型 -2^15 到 2^15 - 1 2字节
int32 有符号 32 位整型 -2^31 到 2^31 - 1 4字节
int64 有符号 64 位整型 -2^63 到 2^63 - 1 8字节
uint8 无符号 8 位整型 0 到 255 1字节
uint16 无符号 16 位整型 0 到 2^16 - 1 2字节
uint32 无符号 32 位整型 0 到 2^32 - 1 4字节
uint64 无符号 64 位整型 0 到 2^64 - 1 8字节
byte 类似uint8,用来存储字符 0 到 255 1字节
rune 类似int32,表示一个Unicode码 -2^31 到 2^31 - 1 4字节
int 系统32位类似int32,64位类似int64 视系统而定 视系统而定
uint 系统32位类似uint32,64位类似uint64 视系统而定 视系统而定
uintptr 无符号整型,用于存放一个指针 - -
浮点型
类型 描述 占用空间
float32 IEEE-754 32位浮点型数 4字节
float64 IEEE-754 64位浮点型数 8字节
complex64 32 位实数和虚数 -
complex128 64 位实数和虚数 -

布尔型(bool)

  • 布尔型也叫bool型,其值只可以是常量 true 或者 false。
  • bool类型占1个字节。
  • bool类型适用于逻辑运算,一般用于程序流程控制。

字符型

Go语言中没有专门的字符型,使用byte来保存单个字母字符。

字符串(string)

  • 字符串就是一串固定长度的字符连接起来的字符序列。Go 的字符串是由单个字节连接起来的。Go 语言的字符串的字节使用 UTF-8 编码标识 Unicode 文本。
  • 字符串一旦赋值了,字符串就不能修改了。
var str = "hello"
str[0] = 'a' //错误写法,不能去修改str的内容。

基本数据类型的默认值

Go语言中,数据类型都有一个默认值,又叫零值。当变量没有赋值时,就会保留默认值。

数据类型 默认值
整型 0
浮点型 0
字符串 ""
布尔型 false

派生数据类型

  • 指针类型(pointer)
  • 数组类型
  • 切片类型(slice)
  • 字典类型(map)
  • 结构体类型(struct)
  • 管道类型(channel)
  • 接口类型(interface)
  • 函数类型(函数也是一种数据类型)

你可能感兴趣的:(Go语言-数据类型)