两个操作数,来看看我们小时候的数学运算;
示例:
public static void main(String[] args) { int a = 10; int b = 20; System.out.println(a + " + " + b + " = " + (a + b)); System.out.println(a + " - " + b + " = " + (a - b)); System.out.println(a + " * " + b + " = " + (a * b)); System.out.println(a + " / " + b + " = " + (b / a)); }
整数运算:
示例:
public static void main(String[] args) { long a = 1231321311231231L; int b = 1213; short c = 10; byte d = 8; System.out.println((a + b + c + d)); //long类型 System.out.println((b + c + d));//int类型 System.out.println((c + d));//int类型 123456789 }
浮点运算:
示例
返回布尔值
就是我们小学的取余; 5%3 余 2
其操作数可以为浮点数,一般使用整数。如:
System.out.println(5.9 % 3.9);// 2.0000000000000004
要点:
示例:
public static void main(String[] args) { System.out.println("正数%正数"); System.out.println(1 % 2); System.out.println(2 % 2); System.out.println(3 % 2); System.out.println("负数%负数 "); System.out.println(-1 % -2); System.out.println(-2 % -2); System.out.println(-3 % -2); System.out.println("负数%正数 "); System.out.println(-1 % 2); System.out.println(-2 % 2); System.out.println(-3 % 2); System.out.println("正数%负数 "); System.out.println(1 % -2); System.out.println(2 % -2); System.out.println(3 % -2); }
自增自减运算符详解:
逻辑与:&&和&,逻辑或:||和|,逻辑非:!。
说明:
示例1:
public static void main(String[] args) { int a = 5; boolean b = (a < 4) && (a++ < 10); System.out.println("使用短路逻辑运算符的结果为" + b); System.out.println("a的结果为" + a); }
解析: 该程序使用到了短路逻辑运算符(&&),首先判断 a<4 的结果为 false,则 b 的结果必定是 false, 所以不再执行第二个操作 a++<10 的判断,所以 a 的值为 5。
示例2:
public static void main(String[] args) { boolean a = true; boolean b = false; System.out.println("a && b = " + (a && b)); System.out.println("a || b = " + (a || b)); System.out.println("!(a && b) = " + !(a && b)); }
public static void main(String[] args) { int a = 10; int b = 20; // a = a + b a += b; System.out.println("a = " + a); }
“+” 运算符两侧的操作数中只要有一个是字符串(String)类型,系统会自动将另一个操作数转换为字符串然后再进行连接。
public static void main(String[] args) { String str = "Like "; int num = 520; System.out.println((str + num) instanceof String);// true }
三目条件运算符,语法格式:
【演示】
public static void main(String[] args) { int score = 80; String type = score < 60 ? "不及格" : "及格"; System.out.println("type= " + type); }
以利用三元运算符做到更加精简代码
下表中具有最高优先级的运算符在的表的最上面,最低优先级的在表的底部。
大家不需要去刻意的记住,表达式里面优先使用小括号来组织!!方便理解和使用,不建议写非常冗余的代码运算!
public static void main(String[] args) { // 不建议向下面这样写 boolean flag = 1 < 4 * 5 && 122 > 3 || 'q' + 3 < 5; System.out.println(flag); }