1、概念
运算符:
对字面量或者变量进行操作的符号
表达式:
用运算符把字面量或者变量连接起来,符合java语法的式子就可称为表达式。
2、算数运算符
字符串的“+”操作:
当“+”操作中出现字符串时,实现的是字符串的拼接工作。
连续进行“+”操作时,从左到右逐个执行(只要有字符串参与运算,就进行字符串的拼接工作)。
例如:
”123”+ 123 = “123123”
1 + 99 + “年黑马” = “100年黑马”
“abc” + true = “abctrue”
1 + 2 + “abc” + 2 + 1 = “3abc21”
3、自增自减运算符
注意事项:
++和--既可以写在变量前面,也可以写在变量后面。
单独使用:++和--无论是放在变量的前面还是后面,单独写一行结果是一样的。
参与计算:前加,先加后用;后加,先用后加。
4、赋值运算符
5、关系运算符
注意事项:
-
关系运算符的结果都是boolean类型,要么是true,要么是false。
-
千万别把“==”写成“=”。
6、逻辑运算符
短路逻辑运算符
7、三元运算符
格式:
关系表达式 ? 表达式1 : 表达式2;
8、运算符优先级
注:要习惯使用小括号
9、原码,反码与补码
9.1原码:
十进制数据的二进制表现形式,最左边是符号位,0为正,1为负
如十进制56,原码为00111000。其中,最左边的“0”为符号位。
一个“0”或一个“1”称为
比特位(
bit)。一个
字节有8位。
原码可以表示的范围:
利用
原码对正数进行计算是不会出现问题的,但
如果对负数计算,结果就会出错。
9.2反码:为了解决原码不能计算负数的问题而出现的。
计算规则:正数的反码不变,负数的反码在原码的基础上,符号位不变,数值取反(0变1,1变0)。
如-56的原码为10111000,反码为11000111。
反码跨0计算会有误差,原因0对应两个反码:
9.3补码:为解决反码的跨零计算出现误差问题(即只用00000000表示0,而11111111表示-1,以此类推)
计算规则:
正数的补码不变,负数的补码在反码的基础上+1。
补码还能多记录一个-128,且无对应原码和反码。
计算机中的存储和计算都是以补码的形式进行的。
10、按位运算符
注意:
-
"&","|"不会短路
-
“<<”左移一次,相当于*2;">>"右移一次,相当于/2