1:算数运算符
几个注意的运算符号
%:A%B实际等于A-A/BB当A如果是浮点数时候实际为A-(int)A/BB
前置++和后置++;
前置++:实际是先++后,把新的值给一个中间变量temp,再把中间变量temp赋值给其他变量
后置++:实际是先把值赋值给temp,然后再++,再把temp赋值给其他变量。
2:关系运算符
记住还有一个instanceof
关系运算符的结果只有false或者ture
3:逻辑运算符
&逻辑与
&&短路与
|逻辑或
||短路或
!取反
^逻辑异或
短路与&&如果第一个为假第二个就不会执行了
逻辑与&不管第一个是否为假都会执行第二个
短路或||如果第一个为真第二个就不会执行了
逻辑或|不管第一个是否为真都会执行第二个
4:赋值运算
基本赋值运算符 = eg: int a = 10;
复合赋值运算符
+= ,-= ,*= , /= ,%= 等 , 重点讲解一个 += ,其它的使用是一个道理
a += b; [等价 a = a + b; ]
a -= b; [等价 a = a - b; ]
注意复合赋值运算符有一个特性:
byte a=10;
a+=1;//实际等于:a=(byte)(a+1);
a++;//实际等于:a=(byte)(a+1);
复合运算符和++,–都自带类型转化(强转)
赋值运算符特点:
运算顺序从右往左 int num = a + b + c;
赋值运算符的左边 只能是变量,右边 可以是变量、表达
5:三元运算符
基本语法:条件表达式?表达式2 :表达式3
条件表达式为真执行表达式2,否则执行表达式3
6:运算符优先级
7:标识符的命名规则和规范
标识符命名规范
包名:多单词组成时所有字母都小写:aaa.bbb.ccc //比如 com.hsp.cr
类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz [大驼峰
变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz [小
驼峰, 简称 驼峰法]
常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
关键字:
保留字:
Java 保留字:现有 Java 版本尚未使用,但以后版本可能会作为关键字使用。自己命名标识符时要避免使用这些保留
字 byValue、cast、future、 generic、 inner、 operator、 outer、 rest、 var 、 goto 、cons
8:进制(程序员的基本功)
对于整数,有四种表示方式:
二进制:0,1 ,满 2 进 1.以 0b 或 0B 开头。
十进制:0-9 ,满 10 进 1。
八进制:0-7 ,满 8 进 1. 以数字 0 开头表示。
十六进制:0-9 及 A(10)-F(15),满 16 进 1. 以 0x 或 0X 开头表示。此处的 A-F 不区分大小写。
第一组:
- 二进制转十进制
- 八进制转十进制
- 十六进制转十进制
用权重相乘的方法
第二组: - 十进制转二进制
- 十进制转八进制
- 十进制转十六进制
将该数不断除以 2/8/16,直到商为 0 为止,然后将每步得到的余数倒过来,就是对应的二进制
第三组 - 二进制转八进制
- 二进制转十六进制
从低位开始,将二进制数每三位一组,转成对应的八进制数即可。
从低位开始,将二进制数每四位一组,转成对应的十六进制数即可。
第四组 - 八进制转二进制
- 十六进制转二进制
将八进制数每 1 位,转成对应的一个 3 位的二进制数即
将十六进制数每 1 位,转成对应的 4 位的一个二进制数即可
9:原码、反码、补码(重点 难点)
1:二进制最高位是符号位,1为负,0为正
2:正数的原码,反码,补码都和原码一样
3:负数的反码是原码除符号位不变其余位取反,补码是反码+1;补码到原码则补码-1;
4:计算机底层进行运算是用补码进行运算,我们要看运算结果要看他的原码
10:位运算符
java 中有 7 个位运算(&、|、^、~、>>、<<和 >>>)
&按位与
|按位算或
^按位异或
~按位取反
算数右移:低位溢出符号不变,并用符号位补溢出高位
算数左移:符号位不变,低位补0
逻辑右移也叫无符号右移,运算规则是: 低位溢出,高位补 0
没有逻辑左移