
上QQ阅读APP看书,第一时间看更新
3.2.1 基本类型
Go语言中内置了19种基本类型。其中,整型10种,其他类型9种。
1.整型
Go语言中的整型有10种,其中与计算机架构有关的是两种,即int(有符号)和uint(无符号),如表3-4所示。
表3-4 int和uint的类型宽度

显式表达自身宽度的整型有8种,如表3-5所示。
表3-5 显式表达自身宽度的整型

整型的取值范围是2的类型宽度次幂。
2.其他类型
除整型以外的其他类型如表3-6所示。
表3-6 其他类型

在使用上述类型时,有以下注意事项。
● rune是int32的别名。Unicode标准使用术语“码点”来指代由单个Unicode值表示的个体。Go语言则引入“rune”这个术语来表示“码点”。一个rune值表示一个字符,比如,'开'、'始'、'学'、'习' 均代表一个Unicode字符。
● 传统的字符串由字符组成,在Go语言中,字符串(string类型)由字节组成。Go语言提供了rune类型,允许将字符串转换为rune数组,从而方便地处理单个Unicode字符。
● Go是强一致性类型的语言,不允许使用隐式类型转换,就算别名和基础类型一样,也不能进行隐式类型转换。
注意:尽管这些基本类型在使用上相对简单,但仍要关注一些细节,如类型转换、溢出和精度等。了解这些细节可确保代码的正确性和可维护性。