- 推荐学习文档
文章目录
基本类型
虽然从底层而言,所有的数据都是由比特组成,但计算机一般操作的是固定大小的数,如整数、浮点数、比特数组、内存地址等。进一步将这些数组织在一起,就可表达更多的对象,例如数据包、像素点、诗歌,甚至其他任何对象。Go语言提供了丰富的数据组织形式,这依赖于Go语言内置的数据类型。这些内置的数据类型,兼顾了硬件的特性和表达复杂数据结构的便捷性
| 基本数据类型 | 长度(字节) | 默认值 | 说明 |
|---|---|---|---|
| bool | 1 | false | |
| byte | 1 | 0 | byte是uint8的别名 |
| rune | 4 | 0 | Unicode Code Point,rune是int32的别名 |
| int,uint | 4or8 | 0 | 32 or 64位 |
| int8,uint8 | 1 | 0 | -128 ~ 127, 0 ~ 255 |
| int16,uint16 | 2 | 0 | -32768 ~ 32767, 0 ~ 65535 |
| int32,uint32 | 4 | 0 | -21亿~ 21亿, 0 ~ 42亿 |
| int64,uint64 | 8 | 0 | |
| float32 | 4 | 0.0 | |
| float64 | 8 | 0.0 | |
| complex64 | 8 | ||
| complex128 | 16 | ||
| uintptr | 4or8 | 这是一个整数类型!!!,以存储指针的uint32 or uint64整数 |
| 复杂类型 | 长度(字节) | 默认值 | 说明 |
|---|---|---|---|
| array | 值类型 | ||
| struct | 值类型 | ||
| string | “” | utf-8字符串 | |
| slice | nil | 引用类型 | |
| map | nil | 引用类型 | |
| channel | nil | 引用类型 | |
| interface | nil | 接口 | |
| function | nil | 函数 |
整型
Go语言中整形被分为三大类:int 、uint、uintptr
这三种类型的长度是跟据程序所在的操作系统来决定长度的:
- int 和 uint 在32位操作系统上,它们使用32位,4个字节,在64拉操作系统上,它们使用64位,8个字节。
- uintptr 的长度被设定为存储指针的 uint32 或 uint64 整数
int 和uint又被称为有符号整形和无符号整形
- int
- int8 取值范围:-128 ~ 127
- int16 取值范围:-32768 ~ 32767
- int32 取值范围:-2,147,483,648 ~ 2,147,483,647
- int64 取值范围:-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
- uint
- uint8 取值范围:0 ~ 255
- uint16 取值范围:0 ~ 65,535
- uint32 取值范围:0 ~ 4,294,967,295
- uint64 取值范围:0 ~ 18,446,744,073,709,551,615
- 用不同的进制来表示整数:
package main
import "fmt"
func

最低0.47元/天 解锁文章
3976

被折叠的 条评论
为什么被折叠?



