运算符分类

  运算符指明对操作数的运算方式.组成表达式的java操作符有很多种..运算符按照其要求的操作数数目来分,可以有单目运算符、双目运算符和三目运算符,他们分别对应1个、2个、3个操作数。运算符按其功能来分,有算术运算符、赋值运算符,关系运算符,逻辑运算符,位运算符和其他运算符

  操作数数目来分

    单目运算符

      ~(按位取反)、!(取非)、-(负号运算符)、++(自增)、--(自减)

        列如

 1 ~5 //按位取反
 2
 3 -6 boolean flg=true;
 4
 5 !flg //取非false
 6
 7 -5 //负号运算符-5
 8
 9 int a=5;
10
11 //这里一定要注意自增++的位置很重要,++在前是先计算后应用,++在后是先应用后计算
12
13 a++; //5
14
15 ++a;//6
16
17 //这里一定要注意自减--的位置很重要,--在前是先计算后应用,--在后是先应用后计算
18
19 a--; //5
20
21 --a; //4

    双目运算符

      +、-、*、/、%(取余)

1 6+5; //+运算符11 
2 6-5; //-运算符1 
3 6*5; //*运算符30 
4 6/5; ///运算符1 这里注意两个整型相除是会舍去小数点后面的数值 
5 7.25/5; //1.45 只有其中一个位浮点型时小数点后面的数值才会显示 
6 7%5; //%运算符2 
7 12%5 //2 

    三目运算符

      条件?a:b; 当?前面的条件成立为真时 执行a部分代码,反之执行b部分的代码

1 int a=6;
2 int b=5;
3 a<b?"成立":"不成立" //不成立

  其功能来分

    算数运算符

      +,-,*,/,%,++,--

    赋值运算符

      =

1  1 int a;
2  a=10;

    关系运算符

      >,<,<=,>=,==,!=, instanceof(是否继承或者实现这个类或者接口)

1 a>b;
2 b<c;
3 a>=b;
4 a<=c;
5 a==b;
6 a!=c;
7 List list=new ArrayList();
8 list instanceof ArrayList; //这里一定要注意,instanceof比较了类型必须是引用类型

    逻辑运算符

      &&,||,!

1 a<b&&a<c
2 a<b||a<c

    位运算符

      &,|,^,~,<<,>>,>>>

 1 /* &运算符想要知道怎么算
 2 首先第一步就要把数字转换成二进制
 3 9=1001 5=101
 4 相同位都为1则取1,否则取0;
 5 |运算符也是要先转换成二进制
 6 相同位有一个为1则取1,都为0才取0;
 7 ^运算符也是要先转换成二进制
 8 不相同则取1,相同则取0; */
 9 9&5; //1 
10 5&9; //1 
11 9|5; //13 
12 5|9; //13 
13 9^5; //12 
14 5^9; //12 
15 9<<2; //36 
16 /* 9转为二进制是10001
17 左移2为(就是多加两位,也就是两个0,也可理解左移动一位就是剩余2)
18  为1000100 转换成十进制就是36
19 */
20 9>>2; //2 
21 9>>>2; //2 
22 /*
23 >>运算符 9转为二进制是10001 右移2为(就是去掉后面两位)
24 为10 转换成十进制就是2
25 >>>运算符类似于>>运算符
26 */ 

    条件运算符

      ?,:

    扩展赋值运算符

      +=,-=,*=,/=

  符号优先级高到低排列:

      [] () ++ -- ! ~ instanceof * / % + - << >> >>> <> <= > | == != & ^ && || ? : = op= 

02-13 01:06