Java语言运算符
运算符
一、算数运算符的概念和使用
+,-,*,/,%
二、算术运算符的注意事项
1、整数除以整数等到的结果是整数,小数部分会舍去
2、可是用强制类型转换或者乘以1.0,实现精度(除数、被除数强制转换,3种情况)
3、除数不能为0,/0报异常;整数/0.0 结果是无穷infinitas;0.0/0.0结果是NAN
三、字符串连接符的概念和使用
只要加法的两边操作数中有一个操作数是字符串类型,则该+就当作字符串连接符处理
四、关系/比较运算符
,>=,>,<,<=,==,!=,最终运算结果一定是boolean类型。
五、自增减运算符
++;自增运算符,当前变量自身数值加1是的效果
--;自减运算符,当前变量自身数值减1是的效果
a++ ;让变量a先加1,后赋值给该变量
++a ;让变量a先加1,后赋值给该变量
其中a++这个整体交做表达式,其中a叫做操作数/变量,也就是a++和a表示不同的含义,因此所占的内存空间也应该不同
后a++表示先让变量a的数值作为整个表达式的结果,然后再让a自身加1;
前++a表示先a自身加1,然后再让变量的数值作为整个表达式的结果;
笔试考点:
a++;++a
只能用于变量不能用于常量
六、逻辑运算符
&&:逻辑与,同真为真,一假为假;
||:逻辑或,一真为真,同假为假;
!:表示逻辑非,相当与取反,真为假,假为真;
逻辑运算符的操作符均为boolean表达式;
逻辑运算符的短路特性:
1、对于逻辑与运算符来说,若第一个表达式为假则结果为假,此时跳过第二个表达式;
2、对于逻辑或运算符来说,若第一个表达式为真则结果为真,此时跳过第二个表达式;
七、条件/三目运算符
条件表达式?表达式1:表达式2
判断条件表达式是否成立,若成立则执行表达式1,否则执行表达式2;
三目运算符查找最大值;
int max = a>b? a: b;
八、赋值运算符
赋值表达式本身也是有值的,其本身之值即为所赋之值;
+=;-=;*=;/=
考点一、
a += 2 与a = a+2的区别,结果上是一样的;int类型时无差异
byte a=10 ;a = a+2 从int到byte会有损失,byte+int相加结果是int;byte+byte相加结果还是int,编译器优化
考点二、
a == 2;判断变量a的值是否等于2
2 == a;判断2是否等于a,推荐该方式;
a = 2;将2赋值给a,覆盖掉原来的值
2 = a;编译报错;意外的类型,变量覆盖了2
九、移位运算符
<< 左移运算符,将数据的二进制位向左移动,右边用0补充;一定范围*2
‘">>"右移运算符,将数据的二进制位向右移动,左边用符号位补充;一定范围内/2
‘">>>"逻辑右移运算符,将数据的二进制位向右移动,左边用0补充;非负数与逻辑右移结果一致,
十、位运算符
& 按位与运算符,按二进制进行与运算,同1为1,一0为0;
| 按位或运算符,按二进制进行或运算,一1为1,同0为0;
~ 按位取反运算符,按二进制进行取反,1为0,0为1;
^ 按位异或运算符,按二进制进行异或运算,同为0,不同为1;
十一、运算符的优先级
()优先级最高
=优先级最低
无法确定优先级,则使用()来确保
十二、任务总结
算术运算符 加减乘除
字符串连接符+
关系运算符 >;>=;<;<=;==;!=
自增运算符++;--
逻辑运算符 &&;||;!
三目运算符
赋值运算符 +=;-+
移位运算符<<;>>;>>>
位运算符&;|;~;^
运算符优先级
以上是 Java语言运算符 的全部内容, 来源链接: utcz.com/z/390742.html