赋值运算符
-
=, 在java 中= 代表把右边的值赋值给左边的变量
算数运算符
-
+,-,*,/,%
public class Demo04 { public static void main(String[] args) { //算术运算符 int a =1; int b = 2; System.out.println("a + b = " + (a + b));//3 System.out.println("a - b = " +(a - b));//-1 System.out.println("a * b = " +(a * b));//2 //注意在java 中整除的除法结果只取整数部分,小数部分舍掉 System.out.println("a / b = " +(a / b));//0 System.out.println("a % b = " +(a % b));//1 } }
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LQQ9tpGs-1622610400090)(C:\Users\Windows10\AppData\Roaming\Typora\typora-user-images\image-20210602115000539.png)]
复合运算符
-
+=, -=,*=,/=, ++,–
public class Demo04 { public static void main(String[] args) { //复合运算符 a = 1; b = 2; // a += b相当于 a = a + b System.out.println("a += b:"+(a += b)); //3 System.out.println("a -= b:"+(a -= b)); //1 System.out.println("a *= b:"+(a *= b)); //2 System.out.println("a /= b:"+(a /= b)); //1 System.out.println("a %= b:"+(a %= b)); //1 /** * a++和 ++a 的区别 * 注意:单独一行的情况下,没有任何的区别 * 只有在参加运算或者输出的时候有区别 * a ++ :先计算后自1+ * ++ a:先自+1再计算 */ // a ++ System.out.println(a ++); //1 // ++ a System.out.println(++ a); //3 a = 1; b = 2; //参加计算的值1 + 3 - 3 + 3 + 1 -3 //变量的值 2 3 2 3 1 4 int result = a++ + ++b - b-- + ++a + --b - a++; //4, 2 // a = 4; b = 1; result = 2; System.out.println("a: " + a); System.out.println("b: "+ b); System.out.println("resut: " + result); } }
-
a++和 ++a 的区别
-
单独一行的情况下,没有任何的区别
-
只有在参加运算或者输出的时候有区别
-
a ++ :先计算后自1+
-
++ a:先自+1再计算
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ml2OPGrY-1622610400092)(C:\Users\Windows10\AppData\Roaming\Typora\typora-user-images\image-20210602122012004.png)]
比较运算符
-
==, !=, >, >=, <, <=
public class Demo05 { public static void main(String[] args) { // 比较运算符 int a =1 ; int b = 2; System.out.println("a > b " + (a >b)); //false System.out.println("a >= b "+ (a >= b)); //false System.out.println("a < b " + (a < b)); //true System.out.println("a <= b "+ (a <= b)); //true System.out.println("a != b "+ (a != b)); //true } }
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iGmiRgUO-1622610400093)(C:\Users\Windows10\AppData\Roaming\Typora\typora-user-images\image-20210602122803550.png)]
逻辑运算符
-
&, && ,/, //, !
public class Demo05 { public static void main(String[] args) { // 比较运算符 int a =1 ; int b = 2; System.out.println("a > b " + (a >b)); //false System.out.println("a >= b "+ (a >= b)); //false System.out.println("a < b " + (a < b)); //true System.out.println("a <= b "+ (a <= b)); //true System.out.println("a != b "+ (a != b)); //true System.out.println("----------------------------------------"); //逻辑运算符 /** * & &&【短路与】 * 使用 & 然后前面的表达式不成立,那么依然会去之后后边的所有表达式 * 如果使用 && 如果前边的条件不成立,则整个表达式成立 */ boolean b1 = a > b && a < b; System.out.println(b1); /** * 逻辑或 * |,||【短路或】 * 使用 | 然后前面的表达式成立,那么依然会去之后后边的所有表达式 * 如果使用 || 如果前边的条件成立,则整个表达式成立 */ boolean b2 = a > b || a < b; System.out.println(b2); //逻辑非:取反:表达式为true,结果就是false, // 表达式为false,结果就是true boolean b3 = !(a > b); System.out.println(b3); } }
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I8IScYRW-1622610400095)(C:\Users\Windows10\AppData\Roaming\Typora\typora-user-images\image-20210602124759475.png)]
三目运算符
a > b ? a :b
public class Demo06 { public static void main(String[] args) { /** * 三目运算符的格式 * 结果是boolean的类型的表达式? 结果1 : 结果2; * 当表达式结果为true,返回结果一,否则返回结果二 * 注意在三目运算符当中结果的类型可以不一致,但是必须可以自动转型 */ String s = true ? "对" : "错"; System.out.println(s); System.out.println("---------------------------------------"); boolean b = true ? false : true ? true : false; System.out.println(b); System.out.println("=============================================="); int a = 'A' == 65 ? 'A' : -1; System.out.println(a); } }
-
-
-
-
===============");
int a = 'A' == 65 ? 'A' : -1;
System.out.println(a);
}
}
```
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F7WG4gLJ-1622610400096)(C:\Users\Windows10\AppData\Roaming\Typora\typora-user-images\image-20210602130501866.png)]