Java学习回忆录-基础语法-004
运算符
算术运算符
+ - * / %(模运算)
还可以用于字符串的拼接,如:
注意:在 println 输出语句中,+ 号可以用来连接字符串,在 println 的小括号里面,如果存在运算,则按正常的运算顺序,一般是从左到右,但是如果在字符串的运算当中,如果有字符串,则会把字符串与后面的数据连接起来.
e.g: System.out.println("hello"+1+2+3);
这个会输出: hello123,而不会输出hello6
因为按照计算顺序,先计算hello与1 ,得到hello1,然后计算hello1与2....
任何字符用 + 和字符串相连接,都会生成新的字符串.
自增运算符
++ –
++ 在左边,先运算再赋值.
++在右边,先赋值再运算.
赋值运算符
=
+= -= *= /= %= (推荐使用的)
e.g:
int a=1,b=1;
a+=b; // 约等于: a=a+b;
注意:a+=b实际上是等于a = (a的数据类型)(a+b);这个a+=b是自带强制数据类型转换的。只有当 a 和 b 为int型时,才会出现相等的情况。
byte b1=1,b2=1;
b1+=b2; // 约等于 b1=b1+b2; 真正的等于 b1=(byte)(b1+b2);
注意: = 和 == 的区别
比较运算符(关系运算符)
> < == != >= <=
逻辑运算符
针对布尔值进行运算的, 逻辑运算针对true 或者false 运算,并产生一个布尔结果...
&&
and ,与, 并且的逻辑,两边必须同时满足,才会true
短路与
当&& 的左边为false 是,发生短路,直接返回false,不再判断另一边的对错.
||
or , 或. 或者的逻辑, 两边满足一边,就为true .
短路或
当|| 左边为true ,发生短路,直接返回true,不再判断另一边的对错.
!
非
!true->false
!false ->true
- &与&&的区别
-
- 结果都一样
- &&具有短路效果,当左边是false,右边不执行.
- |与||的区别
-
- 结果都一样
- ||具有短路效果,当左边是true,右边不执行.
移位运算符
1.>> 右移,最高位是0,则补0,最高位是1则补1
2.<< 左移,左边最高位丢弃,最低位补0
3.>>> 无符号右移,无论最高位为0或者1,都补0
三元运算符
格式:
条件表达式(关系表达式)?值1 :值2;
当条件表达式为true ,取值1
当条件表达式为false ,去值2.