开发者学堂课程【GO 语言核心编程-基础语法、数组、切片、Map:整数类型使用细节】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/625/detail/9521
整数类型使用细节
整数类型使用细节
整型使用细节有5点需要注意:
(1)Golang 整数类型分有符号和无符号两大类,int 和Uint 的大小只和系统有关;
(2)Golang 的整型默认声明为 int 型,说如果在 Golang 中不给型的话系统默认就是 int 型;
(3)整型的使用细节,代码如下:
如果只输入以下代码要询问 N1是什么类型可以将其打印出来。
Var n1=100
以下是查看某个变量数据类型的方法。
//Fmt.printf()用于做格式化输出
Fmt.printf(“n1的类型%T”,n1)
运行以上代码回车可以看到 N1的类型为 int,可以看出如果给一个变量赋值那么该变量默认就是 int 型。
(4)如何在程序查看某个变量的字节大小和数据类型,这种方法在工作中使用较多。演示如下:
//如何在程序中查看某个变量的占用字节大小和数据类型(使用较多)
//仍然用刚才的方法改变代码如下,其中%的表示输出具体的一个数,此时需要用到一个函数 unsafe.sizeof(n1)是 unsafe 包的一个函数,可以返回 n1的变量占用的字节数。需要用到这个包的话就要在主函数中引入这个包
Fmt.printf(“n2的类型%T n2占用的字节数是%d”,n1,unsafe.sizeof(n1))
//需要注意的细节是在主函数中import一个包虽然是普通做法但是不推荐因为不简洁可以直接输入代码
Import(
“fmt”
“unsafe”
)
还有引入其他包直接在其中添加即可,这个是比较简洁的做法。
此时运行代码可以输出 N1的类型和 N2的类型和 N2占用的字节数。通过以上代码就可以在程序中查看某个变量的字节大小和数据类型。
(5)Golang 程序下整型变量在使用时遵循保小不保大的原则,也就是说在保证程序正常运行的情况下,尽量使用占用空间小的数据类型,如年龄等。
举例代码如下:
// Golang 程序下整型变量在使用时遵循保小不保大的原则
//在保证程序正常运行的情况下,尽量使用占用空间小的数据类型
Var age int64=100
(6)保证运行情况下 int 64用来表示年龄不是很合适,当然这也不是错误的表示,只是可以通过占用空间更小的数据类型来定义类型,所以一般可以使用 Byte 比较合理,所以实际生活当中就要遵守保小不保大的原则,但如果不确定这个数有多大的话,最好就用大一点的,例如要定义商品数量时,不知道有多大就最好使用最大的来定义。
Bit:计算机中最小的存储单位;
Byte:是计算机中基本存储的单位。
一个 Byte 等于8个 bit,关于 Byte 和 bit 的使用会在二进制中详细介绍。