一、算术运算符:
+、-、*、/、%、++(自加)、--(自减)
对于++运算符来说:
可以出现在变量前,也可以出现在变量后
不管++出现在变量前还是后,总之++执行结束后,变量的值一定会自加1
1 public class OperatorTest{ 2 public static void main(String[] args) { 3 4 int a = 10; 5 int b = 3; 6 System.out.println(a + b); 7 System.out.println(a - b); 8 System.out.println(a * b); 9 System.out.println(a / b); 10 System.out.println(a % b); 11 12 //重点掌握++和-- 13 //++可以出现在变量前,也可以出现在变量后 14 int i = 10; 15 //i变量自加1 16 i++; 17 System.out.println(i);//11 18 19 int k = 10; 20 //k变量自加1 21 ++k; 22 System.out.println(k);//11 23 24 //语法:当++出现在变量后,会先做赋值运算,再自加1 25 int m = 20; 26 int n =m++; 27 System.out.println(n);//20 28 System.out.println(m);//21 29 30 //语法规则:当++出现在变量前时,会先进行自加1的运算,然后再赋值 31 int x = 100; 32 int y = ++x; 33 System.out.println(x);//101 34 System.out.println(y);//101 35 } 36 }
练习:
1 public class Test { 2 public static void main(String[] args) { 3 //题目 4 int c = 90; 5 System.out.println(c++);//90 6 //分解上面程序:先赋值后运算 7 //int temp = c++; 8 //System.out.println(temp); 9 System.out.println(c);//91 10 11 int d = 80; 12 System.out.println(++d);//81 13 System.out.println(d);//81 14 } 15 }
二、关系运算符:
>、>=、<、<=、==、!=
规则:所有的关系运算符的运算结果都是布尔类型,不是true就是false
在java语言中:
=:赋值运算符
==:关系运算符,判断是否相等
注意:关系运算符中如果有两个符号的话,两个符号之间不能有空格
1 public class Test { 2 public static void main(String[] args) { 3 4 int a = 10; 5 int b = 10; 6 System.out.println(a > b);//false 7 System.out.println(a >= b);//true 8 System.out.println(a < b);//false 9 System.out.println(a <= b);//true 10 System.out.println(a == b);//true 11 System.out.println(a != b);//false 12 } 13 }
三、逻辑运算符:
&(逻辑与)、|(逻辑或)、!(逻辑非)、&&(短路与)、||(短路或)
并且 或者 取反
特点:逻辑运算符要求两边都是布尔类型,并且最终的运算结果也是布尔类型
1、&(逻辑与)、|(逻辑或)、!(逻辑非)
1 public class Test { 2 public static void main(String[] args) { 3 4 //对逻辑&来说,只要有一边是false,结果就是false 5 //只有两边同时为true结果才为true 6 System.out.println(true & true);//true 7 System.out.println(true & false);//false 8 System.out.println(false & false);//false 9 10 //逻辑或是只要有一边是true,结果就是true 11 System.out.println(true | true);//true 12 System.out.println(true | false);//true 13 System.out.println(false | false);//false 14 15 //逻辑非:取反 16 System.out.println(!true);//false 17 } 18 }
2、&&(短路与)、||(短路或)
短路与 和 逻辑与 有什么区别?
这两个运算符的运算结果没有任何区别,完全相同。
只不过 短路与 会发生短路现象
短路现象
原文:https://www.cnblogs.com/llrra/p/14638231.html