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: 0
- float: 0.0
- string: ""
- bool: false
- rune: 0 (等价于- \u0000)
10. 类型断言
类型断言用于从空接口interface{}中提取具体类型的数据。
var value interface{} = "hello"
str, ok := value.(string) // 断言value为string类型
if ok {
    fmt.Println(str)
}
结论
Go语言的基本类型提供了构建复杂数据结构和算法的基础。理解每种类型的特点和适用场景,可以帮助你写出更加高效和安全的代码。在处理数据时,正确选择和使用基本类型,对于提高程序的性能和可读性至关重要。