1. 基本数据类型
- 数值型 int
- 浮点型 float
- bool
- byte
2. int 范围
int | 范围 |
---|---|
int8 | -128 - 127 |
int16 | -323768 - 323767 |
int32 | -2,147,483,648 -> 2,147,483,647 |
int64 | -9,223,372,036,854,775,808 -> 9,223,372,036,854,775,807 |
uint8 | 0 - 255 |
uint16 | 0 - 65535 |
uint32 | 0 - 4,294,967,295 |
uint64 | 0 - 18,446,744,073,709,551,615 |
int | 根据宿主机的机器字长决定,32位的机器就是 int32,64位就是 int64 |
uint | 根据宿主机的机器字长决定,32位的机器就是 uint32,64位就是 uint64 |
八进制写法: 0123
十六进制写法:0xff
格式化输出:%d %x %X
3.float
float | 精度 |
---|---|
f loat32 | 精确位数小数点后7位 |
float64 | 精确位数小数点后15 |
格式化输出:%g %f %e
4. bool
true/false
5. byte
byte其实 uint8 的别名,整数类型的特殊用例,范围不言而喻:0 - 255。
ch byte := 'b'
ch byte := 68
ch byte := 0x42
<= 255 的 utf8 字符可以用 byte 表示
var uch byte = '\u0045'
var uch1 int = '\u03b9'
fmt.Printf("%d, %d", uch, uch1) //int
fmt.Println()
fmt.Printf("%c, %c", uch, uch1) //字符
fmt.Println()
fmt.Printf("%X, %X", uch, uch1) //UTF-8字节
fmt.Println()
fmt.Printf("%U, %U", uch, uch1) //UTF-8 code point
fmt.Println()