学习编程语言,首先要接触的就是数据类型了,几乎所有的编程语言都将数据类型分为两种类型:基础/内置数据类型 + 自定义/扩展数据类型。
对于基本数据类型,主流编程语言都支持以下几种:
- 布尔型:bool/Bool/Boolean,这种使用一个bit位来表示,只有两个值,true或者false。如果一个变量为布尔型,那么它不是true就是false。
- 整型:按照存储的bit位,可以分为8位、16位、32位、64位,按照有无符号,又分为两类:有符号和无符号。对应golang中,就是int8/uint8、int16/uint16、int32/uint32、int64/uint64以及一个按照操作系统平台设定的动态字长(32位或者64位)的int/uint。有很多语言支持long、long long类型,go是不支持的。
- 字符串:这个在各大主流语言中基本是一致的,有的是大写的String,比如C#,有的是小写的string,比如golang。不过所表示的意思都是一样的:一组字符集合。
- 字节型:char/byte,这是一种8bit存储方式的用于表示单个字符的类型,比如 ‘a’、’\n’ 这种。Golang中还有一种用32bit存储的单字节类型:rune,这种是存储单字符表示Unicode字符集中的字符,比如 ‘中’ 这个字符,就可以使用rune进行存储。
- 浮点数:基本上有两种,一种是单精度的,也就是精确到小数位后6~7位的32bit存储的,另一种是精确到小数位后15~16位的64bit存储的。在各种语言中具体的表示也不同,C/C++中为float/double,golang中为f