一,命名规范
包名:全部小写,而且要反着写。
类名,接口名:多个单词时首字母大写,其他小写。
变量名,方法名:多个单词时首字母小写,其他单词首字母大写。
常量名 :全部单词大写,多个单词时用_(下划线)连接。
二,扫描器
三,四个进制
1,二进制
1,满二进一
2,以0b或者0B开头
2,十进制
1,满十进一
3,八进制
1,满八进一
2,以0开头
4,十六进制
1,满十六进一
2,以0x或者0X开头
3,字母表示(A-F)不区分大小写
进制的互相转换
其他进制转十进制:各个位数的大小乘以进制减一次方相加
十进制转为其他进制:不断除以进制直到为零,最后将余数倒过来
二进制转八进制:把二进制的每三位拆分开来对应八进制的每个位数:0b11|010|001:0321
二进制转十六进制:把二进制的每四位拆分开来对应十六进制的每个位数:0b1|1010|0010:0x1A2
位运算
位运算全部以二进制码来运算
原码,反码,补码
1,二进制的最高位是符号位,0表示正数,1表示负数。
2,正数的三码一致。
3,负数的反码是其原码的0取1,1取0。
4,负数的补码是他的反码加1。
5,0的反码补码都是0。
6,Java没有无符号数,指的是整个机器字长的全部二进制位均表示数值位,相当于数的绝对值。
7,计算机运算是以补码的形式运算的,所以查看结果时要看他的原码。
位运算符
1,&(按位与)两个数全部为1则结果为1
2,|(按位或)两个数有一个为1则结果为1,否则为0
3,^(按位异)两个数有一个0,一个1,则结果为1,否则为0
4,~(按位取反)一个数的0变成1,1变成0.
5,>>(算数右移)向右移几位相当于除以了几个2,考虑符号位
6,<<(算数左移)向左移几位相当于乘以了几个2,考虑符号位
7,>>>(逻辑右移)向右移几位,不考虑符号位,直接在最高位上加0