运算符的分类
算术运算符:+,-,*,/,%,++,--
要点一:
int i=3/2;
i的值是多少?
public class test{public static void main(String args[]){int i=3/2;System.out.PRintln(i);}}
要点二:
i++和++i的区别?
加号在后i先参与整个表达式的运算再自加1。
public class test{public static void main(String args[]){int i=3;int j=i++ +5;System.out.println(i);System.out.println(j);}}
加号在前i先自加1再参与整个表达式的运算。
public class test{public static void main(String args[]){int i=3;int j=++i +5;System.out.println(i);System.out.println(j);}}
i --和- - i同理!
关系运算符:>,<,>=,<=,==,!=
使用关系运算符计算的结果为boolean型。
public class test{public static void main(String args[]){int i=3;int j=5;boolean b= i == j;System.out.println(b);}}
布尔逻辑运算符:
! | 逻辑非 | & | 逻辑与 | | | 逻辑或 |
^ | 逻辑异或 | && | 短路与 | || | 短路或 |
a & b和a && b中只要一个为false,结果就是false
a | b和a || b中只要一个为true,结果就是true
a&b和a&&b的区别:
public class test{ public static void main(String args[]){ int i=3; boolean a=i>5 & i++<10; System.out.println(a); System.out.println(i); }}
public class test{ public static void main(String args[]){ int i=3; boolean a=i>5 && i++<10; System.out.println(a); System.out.println(i); }}
因为a&&b中只要一个为false,结果就是false,所以使用&&进行运算时,如果&&的左边表达式的结果为false,则不再计算&&右边表达式的结果。而a&b会判断&两边的表达式是否都为false
逻辑或和短路或同理!
赋值运算符:= 扩展赋值运算符:+=,-=,*=,/=
i+=5 等同于i=i+5
位运算符:&,|,^,~,>>,<<,<<<
字符串连接运算符:+
表达式的类型和值
表达式就是运算符和操作数的序列。
对表达式中操作数进行运算得到的结果叫表达式的值。
表达式的值的数据类型叫表达式的类型。
新闻热点
疑难解答