GO语言中有那么多数值类型,该如何选择?GO语言周末培训班
老男孩IT教育
行业新闻
2021年11月19日 14:25
GO语言中内置很多种数值类型,对于0基础的初学者而言,往往会不知道该如何选择正确的数值类型,本篇文章为大家整理了数值类型的使用场景,选择正确的数值类型往往会更具优势,如果你也有此困惑,请看下文:
GO语言中内置很多种数值类型,对于0基础的初学者而言,往往会不知道该如何选择正确的数值类型,本篇文章为大家整理了数值类型的使用场景,选择正确的数值类型往往会更具优势,如果你也有此困惑,请看下文:
GO语言中内置的数据类型有:
uint8、unit16、uint32、uint64、uint、int8、int16、int32、int65、int
从名称上即可看出类型的大小,uint和int这两种是不带大小的,它们的大小会根据编译参数GOARCH=amd64平台决定。
->需要原子操作的数值根据数据大小选择int32、int64、uint32、uint64,因为原子类型的操作包天生支持这些类型;
->需要与代码生成的交互的数据,可以看生成的代码具体使用哪种类型,以作参考;
->需要调用大多数标准库函数进行处理,可以选择int,因为程序大多数是跑在64位系统上的,如果运行在32系统,且类型可能会超过int32,可以选择int64;
->有些时候可能我们需要一个无符号数据且比较大优先选用uint和uint64;
->只和自己的函数交互以及一些不关注具体类型的包,如json、fmt交互式时,按数值适用范围选择最小类型。
其实我们在编写程序时,一般不需要太关注数值类型,或者也可以说我们的程序中很多数值不会超过int32的最大值,这个时候很多三方库都可以使用int作为交互类型,不用把一个函数为每种类型数值都写一遍,能简化标准库,也能写出更容易维护、简洁的系统。
关于"GO语言中有那么多数值类型,该如何选择?"的话题到这里就结束了,老男孩教育专注Linux云计算运维工程师、Python全栈+人工智能、Python自动化运维开发、网络安全、数据分析、MySQLDBA开发、K8S微服务、Go语言等互联网课程培训。
推荐阅读: