七叶笔记 » golang编程 » 吾八哥学Golang(二):Golang里的基本数据类型

吾八哥学Golang(二):Golang里的基本数据类型

在Golang里有如下几种数据类型:整型、浮点型、布尔类型、 字符串 、复数类型、数组、map,下面通过简单的例子熟悉相关的数据类型:

整型

golang支持如下整型类型:

类型 长度(字节) 取值范围
int8 1 -128到127
uint8 1 0到255
int16 2 -32768到32767
uint16 2 0到65535
int32 4 -2147483648到2147483647
uint32 4 0到4294967295
int64 8 -9223372036854775808到9223372036854775807
uint64 8 0到18446744073709551615

上面表格里没有int,uint,因为这两种类型是根据平台相关,uintptr则如同指针类型。我们要注意的是int和int32是两种不同的类型,在类型强制转换的时候要注意取值返回和长度的问题。至于基本的四则运算则和其他语言是一样,go里的四则 运算符 加减乘除求余分别为+、-、*、/、%,我们要注意的是求余运算为整型所独有的。大小比较和C++里是一样的。

浮点

golang里的浮点类型有float32和float64两种类型,float64的精度更高。

类型 最大值 最小 非负数
float32 3.402823466385288598117041834516925440e

+38

1.401298464324817070923729583289916131280e

-45

float64 1.797693134862315708145274237317043567981e

+308

4.940656458412465441765687928682213723651e

-324

注意下浮点型的数据大小比较不能使用”==”,要使用比较两个数之间的差在某个范围内的方式。

布尔类型

布尔类型的关键字是 bool ,取值就是true和false两种,golang里不支持布尔类型的强制转换。

字符串

字符串的关键字是string,string类型连接通过”+”来实现,取某个字符的内容可以通过下角标来获取,例如str[3],但字符串初始化后是不支持修改某个字符的。字符串的长度可以使用len()函数来获取,同时支持Printf()的格式化输出,后续再学习了。使用字符串的时候尤其要注意的是 字符编码 问题。go里标准库仅支持UTF-8和Unicode编码,其他的编码标准库没有内置的编码转换支持,需要寻找第三方开源库。

复数类型

复数类型分为实部和 虚部 ,对于某个复数z=complex(x,y)在golang里复数的实部可以通过real(z)来获取,虚部通过imag(z)来获取。

至于数组、map后面单独来学习!

相关文章