Go语言中的基本类型笔记
1. 整型(Integer Types)
Go语言支持多种整型,包括无符号整型和有符号整型。
int
:默认的整型,其大小依赖于运行环境(通常是32位或64位)。int8
,int16
,int32
,int64
:分别对应8位、16位、32位、64位的有符号整型。uint
,uint8
,uint16
,uint32
,uint64
:无符号整型,与上述有符号整型相对应。
2. 浮点型(Floating-Point Types)
float32
:单精度浮点数,大约7位有效数字。float64
:双精度浮点数,大约15位有效数字。
3. 字符型(Character Type)
rune
:代表Unicode字符,等价于int32
,用于处理广泛的字符集。
4. 字符串(String Type)
string
:不可变的字符序列,用于文本数据存储。
5. 布尔型(Boolean Type)
bool
:表示真或假的二值状态,可取值true
或false
。
6. 空类型(Empty Type)
interface{}
:空接口类型,可以保存任何类型的值。
7. 错误类型(Error Type)
error
:错误类型的接口,常用于处理程序中的异常情况。
8. 基本类型的转换
Go语言中,基本类型之间的转换需要显式进行,以避免潜在的精度损失或溢出问题。
var num int = 10
var floatNum float64 = float64(num) // 整型转浮点型
9. 基本类型的零值
每个基本类型都有一个零值,这是当变量未初始化时的默认值。
int
: 0float
: 0.0string
: ""bool
: falserune
: 0 (等价于\u0000
)
10. 类型断言
类型断言用于从空接口interface{}
中提取具体类型的数据。
var value interface{} = "hello"
str, ok := value.(string) // 断言value为string类型
if ok {
fmt.Println(str)
}
结论
Go语言的基本类型提供了构建复杂数据结构和算法的基础。理解每种类型的特点和适用场景,可以帮助你写出更加高效和安全的代码。在处理数据时,正确选择和使用基本类型,对于提高程序的性能和可读性至关重要。