1. 赋值运算符
表示形式: =
含义:将 “=” 右边的值赋值给左边。 比如:int a = 2;
对于对象来说,赋值的不是对象的值,而是对象的引用赋值
2. 算数运算符
+ - * / %
跟数学上的数值运算无太大区别
需要注意的就是优先级的问题。只需要记住一点:()的优先级最高
3. 自增自减运算符
i++(先运算在自增1) ++i(先自增1在运算)
4. 逻辑运算符
操作数都应为boolean类型的表达式
& : 两边都为true,结果为true,一个为false就是false
| : 一个为true就是true,两个都是false才是false
! : 取反
^ : 相同为false,不同为true短路运算符(常用):如果第一个操作数的结果就能够决定最终的结果,第二个操作数不再执行
&& : 两边都为true,结果为true,一个为false就是false
|| : 一个为true就是true,两个都是false才是false
5. 三元运算符
关系表达式 ? 表达式1 :表达式2
三元运算符的最终结果一定要被使用,要么赋值给一个变量,要么直接打印出来。
6. 位运算符(了解)
将操作数转为二进制,然后对二进制的数据进行指定规则的运算,最终将结果转为十进制
& : 一个为0就是0,两个都为1才是1
| : 一个为1就是1,两个都为0才是0
^ : 相同为0,不同为1
7. 位移运算符
<< 左移运算符
将第一个操作数转为二进制,向左移动第二个操作数的位数,空位补0,最终的二进制的结果转为十进制
规律 : a<<b ==> a*2^b;
>> 右移运算符
将第一个操作数转为二进制,向右移动第二个操作数的位数,移出线的位数忽略,剩余的二进制数据转为十进制
规律 : a>>b ==> a/2^b;
8. 运算符优先级
单目算数位关系,逻辑三目后赋值