一、标识符的命名规范
1、标识符概念
Golang对各种变量、方法、函数等命名时使用的字符序列称为标识符。简单来说,凡是我们自己可以起名字的地方都叫标识符。
2、命名规则
- 1、数字、字母、_组成
- 2、数字不能打头
- 3、Golang中严格区分大小写。num和Num是两个不同的变量。
- 4、标识符不能包含空格
- 5、下划线_在Go中是一个特殊的标识符,称为空标识符。代表忽略,如忽略某个返回值。所以仅能作为占位符使用,不能作为标识符使用。
- 6、不能以系统保留关键字作为标识符(保留关键字公有25个),如:break,if等
- 注意:_是空标识符,用于占用
3、标识符命名注意事项
- 1、包名:尽量使package的名字和目录保持一致,尽量采取有意义的包名,简短有意义,不要和标准库冲突。如:不要把包名命名位标准库fmt
- 2、变量名、函数名、常量名:采用驼峰法 xxxYyyZzz
- 3、如果变量名、函数名、常量名首字母大写,表示可以被其他包访问;如果首字母小写,则只能在本包中使用(简单理解为:首字母大写表公开,首字母小写表私有。类似于Java中的public、private,但Golang中没有这两个关键字)
二、系统保留关键字
三、系统的预定义标识符
四、进制
1、分类
- 对于整数,有四种表示方式:
- 1、二进制:0,1,满2进1
在Golang中,不能直接使用二进制表示一个整数,沿用了C的特点。如果想输出二进制,使用%b - 2、十进制:0-9,满10进1
- 3、八进制:0-7,满8进1
在Golang中,八进制以数字0开头,如:023 - 4、十六进制:0-9及A-F,满16进1。以0x或0X开头表示。
A-F不区分大小写
2、进制转化
- 1、其他进制(二、八、十六进制)转十进制: *2^(位数-1)
- 2、十进制转其他进制(二、八、十六进制): /2^(位数-1)
- 3、二进制转八进制、十六进制
- 4、八进制、十六进制转二进制
五、原码、反码、补码
现代的电子计算机技术都是采用的二进制,也就是说:在计算机内部运行各种运算时,都是以二进制的方式来进行的。更具体来说,是通过补码运算的。
- 对于有符号的数而言:
- 1、二进制的最高位是符号位:0代表整数,1代表负数
1 ===》0000 0001 -1 ===》1000 0001 - 2、正数的原码、反码、补码都一样
- 3、负数的反码=它的原码符号位不变,其他位取反
1 ===》原码[0000 0001] 反码【0000 0000】 补码【0000 0000】
-1 ===》原码[1000 0001] 反码【1111 1110】 补码【1111 1111】 - 4、负数的补码=它的反码 + 1
- 5、0的反码、补码都是0
- 6、在计算机运算的时候,都是以补码的方式来运算的。
而且只有加法,没有减法。减法转成加上一个负数:1-1=1+(-1)