算术运算符:+,-,*,/,%,++,--
赋值运算符:=
关系运算符:>,<,>=,<=,==,!=instanceof
逻辑运算符:&&,||,! 与 或 非
位运算符:&,|,^,~,>>,<<,>>>
条件运算符:?,:
扩展赋值运算符:+=,-=,*+,/=
public class Demo1 { public static void main(String[] args) { //二元运算符 int a = 10; int b = 15; int c = 20; int d = 25; System.out.println(a+b); System.out.println(a-b); System.out.println(a*b); System.out.println(b%a);// %模运算 表示去余数 System.out.println(a/(double)b);//原int类型 结果有小数需转换 } }
public class Demo2 { public static void main(String[] args) { byte d = 5; short c = 11; int b = 120; long a = 32502; System.out.println(a+b+c+d);//有long 输出为lang类型 System.out.println(b+c+d);//输出为int类型 System.out.println(c+d);//会自动转换为int类型 } }
public class Demo3 { public static void main(String[] args) { //关系运算符返回的结果为布尔值 false true int a = 15; int b = 20; System.out.println(a>b); System.out.println(a<b); System.out.println(a==b); System.out.println(a!=b); } }
public class Demo4 { public static void main(String[] args) { //一元运算符 ++ -- 自增 自减 int a = 3; int b = a++;//++在后,先赋值后增加 System.out.println(a);//输出4 int c = ++a;//++在前,先增加后赋值 System.out.println(a);//输出5 System.out.println(b);//输出为3,这就表示是先赋值后增加的 System.out.println(c);//输出5 } }
&&——与
||——或
!——非
public class Demo5 { public static void main(String[] args) { //逻辑运算符 boolean a = true; boolean b = false; System.out.println("a && b:"+(a&&b));//两个为真,结果才为ture System.out.println("a || b:"+(b||a));//其中一个为真,即为ture System.out.println("a ! b:"+!(a&&b));//如果为真,则为假,结果相反 //短路运算 int d = 5; boolean c = (d>5)&&(d++>5);//运算机制若第一个为假则不会运算后面的 System.out.println(c); System.out.println(d);//输出还是为5 } }
public class Demo6 { public static void main(String[] args) { int a = 10; int b = 20; a = a+b; a+=b;//上面运算放法的偷懒 System.out.println(a); //字符串连接符 + System.out.println(a+b+""); System.out.println(""+a+b); } }
public class Demo7 { public static void main(String[] args) { /* 三元运算符 X ?y :z 如果X为true 则结果为y 否则结果为z */ int a = 50; String b = a<60 ?"不及格":"及格"; System.out.println(b); } }