Go基本类型和字面量

Go基本类型

基本类型和字面量的关系

类型(type)可以看作是值(value)的模板, 值可以看作是类型的实例。

基本内置类型

Go支持如下基本类型:

  • 布尔类型: bool
  • 整数类型:int8, uint8, int16,uint16, int32, uint32,int64, uint64, int, uintuintptr
  • 浮点类型:float32float64
  • 复数类型:complex64complex128
  • 字符串类型: string
    其中Go有两种内置类型别名(type alias):
  • byteuint8的内置别名。我们可以将byteuint8看作同一个类型。
  • runeint32的内置别名。我们可以将rune和6int32看作同一个类型。
    u开头的整数类型都是无符号整数类型。 无符号整数类型的值都是非负的。
    一个complex64复数值得实部和虚部都是float32类型得值。一个complex128复数值得实部和虚部都是float64类型得值。
    uintptrintuinit类型得值得尺寸依赖具体编辑器实现。通常在64位架构上, intuint类型得值是64位得;在32位架构上, 他们是32位得。 编辑器必须保证uintptr类型的值能够存下任意一个内存地址。

零值

每一个类型都有一个零值。一个类型的零值可看作是类型的默认值。

  • 一个布尔类型的零值是真假中的假。
  • 数值类型的零值都是零。
  • 字符串类型的零值是一个空字符串。

基本类型的字面表示形式

布尔类型字面量形式

我们可将falsetrue这两个预声明常量当作布尔类型的字面量形式。

整数类型值字面量形式

整数类型有四种字面量形式: 十进制、八进制、十六进制和二进制。其中十六进制必须使用(0x或0X开头),八进制必须使用(0、0o或者0O开头), 二进制表示必须(使用0b或者0B开头),十进制必须不能用0开头。

浮点数类型值字面量形式

一个浮点数字面量形式可能包括一个十进制整数部分、小数点、一个十进制小数部分和一个以10为底得整数指数部分。整数指数部分有字母e或者E带一个十进制整数字面量组成(xEn表示x乘以10^n的意思, 而xE-n表示x除以10^n的意思)。

posted @ 2021-10-08 11:09  phper-liunian  阅读(433)  评论(0编辑  收藏  举报