2.6 运算符
2.6.1 常见运算符
算术运算符
关系运算符
逻辑运算符
赋值运算符
三目运算符
2.6.2运算符详细介绍
1、算术运算符
基本算术运算符
- / %
注意:/左右两边都是整型,结果取整
- / %
自增、自减运算符
++ --
特点:
①属于一元运算符
i++、--i
②可以作为独立的语句或作为表达式使用
作为独立的语句使用:
i++;等价于++i;效果上等价于 i=i+1;
作为表达式使用:
int j = i++; 先赋值后自增// int temp = i++; i++; j = temp;
int j = ++i; 先自增后赋值 ///
③自增、自减运算符,底层做了优化,所以效率较高,其次 不用手动的类型转换
int i = 10;
i*=1.523;//√
System.out.println(i);//15
2、关系运算符
< >= <= == !=
3、逻辑运算符
名称 语法 特点
&& / & 与 条件1&& 条件2 两个条件都成立,结果为true
|| / | 或 条件1|| 条件2 只要有一个条件成立,结果为true
! 非 !条件 如果条件成立,结果为false,否则为true
&&和&的区别:
&& 如果第一个条件不成立,则不再执行第二个条件,效率较高
& 不管第一个条件是否成立,都要执行第二个条件,效率较低
||和|的区别:
|| 如果第一个条件成立,则不再执行第二个条件,效率较高
| 不管第一个条件是否成立,都要执行第二个条件,效率较低
4、赋值运算符
1、基本赋值运算符
2、复合赋值运算符
+= 、-= 、*=等
特点:
1、运算顺序从右往左
2、赋值运算符的左边只能是变量,右边可以是变量、常量、表达式、方法调用
3、复合赋值运算符具备以下特点
①i+=3;效果上等价于 i=i+3;但效率比i=i+3;较高
②编译器内部做了优化,不用我们手动的类型转换了
③复合赋值的变量必须提前进行初始化
5、三目运算符
说明
条件?操作数1 :操作数2
特点:
1、如果条件成立,结果为操作数1,否则为操作数2!
2、两个操作数的类型要求一致或兼容
6、运算符优先级
. () {} ; ,
R—>L ++ -- ~ !(data type)
L—>R * / %
L—>R + -
L—>R << >> >>>
L—>R < > <= >= instanceof
L—>R == !=
L—>R &
L—>R ^
L—>R |
L—>R &&
L—>R ||
L—>R ? :
R—>L = *= /= %=
+= -= <<= >>=
>>>= &= ^= |=
本教程由尚硅谷教育大数据研究院出品,如需转载请注明来源,欢迎大家关注尚硅谷公众号(atguigu)了解更多。
网友评论