1.Golang 基本数据类型的默认值
数据类型 | 默认值 |
---|---|
整形 | 0 |
浮点型 | 0 |
字符串 | " " |
布尔类型 | false |
常见的值类型和引用类型:
值类型: 基本数据类型(int
float
bool
string
),数组和结构体(struct
)
引用类型: 指针、slice
切片、map
、channel
管道、interface
接口等等都是引用类型。
值类型和引用类型的使用特点:
值类型: 变量直接存储值,内存通常在栈中分配。
引用类型: 变量存储的是一个地址,这个地址对应的空间才是真正存储的数据(值),内存通常在堆上分配。
当没有任何变量引用这个地址时,这个地址对应的数据空间就成为了一个 垃圾,由 GC 来进行回收。
2.Golang 中整数的类型
类型 | 有无符号 | 占用存储空间 | 备注 |
---|---|---|---|
int | 有 | 32 位系统 4 个字节,64 位系统 8 个字节 | |
uint | 无 | 32 位系统 4 个字节,64 位系统 8 个字节 | |
rune | 有 | 与 int32 等价 | 主要用于处理 Unicode 码 |
byte | 无 | 与 uint8 等价 | 主要用于存储字符 |
- 有符号合无符号最大的区别就是,有符号支持负数,而无符号则是只支持正数。
bit
和byte
的区别:bit
是计算机中最小的存储单位,而byte
则是计算机中的基本存储单元(1 btye = 8 bit
)
Go 语言的字符使用的是 UTF-8 的字符编码,查询编码地址为:查询编码地址
在 Go 中,字符的本质是一个整数,直接输出时,会打印出字符对应的 UTF-8 编码的码值。
1 2 3 4 |
|