首页 > 编程 > Java > 正文

java运算符

2019-11-09 19:55:09
字体:
来源:转载
供稿:网友

java运算符

运算符优先级(下图转自百度百科)

1:基本运算符

1.1:四则运算

        

(int)计算数A(int)计算数B运算符运算结果
                  12            3      +       15
                  12            3       -        9
                  12            3       *       36
                  12            3        /        4

1.2:赋值运算

符号:=

例如:int a=1;

         int b=a;

这里的a=1跟b=a中的“=”都是赋值运算。

1.3:自增自减

符号:++(自增)、--(自减)

例如:

           int a=1;

           int b=2;

           a++;

           b--;

最后a=2,b=1.

注意点:

运算不要复杂,尽量使用括号代替优先级的选择。

例如:int a=1;

            int b=2;

            int c=b++ - a-- * ++a / --b + ++b;

虽然计算机很容易算出来结果为5,但是这种写法很容易出错,而且给阅读代码的人带来很大的困难。

2:三目运算符(重要)

作用:三目运算符最大的作用是用来简化一些判断语句的书写。

例如:将a,b中较大的一个数赋给c;

         解法A:

                       int a = 5;

                       int b = 6;

                       int c;

                       if(a>b){

                               c=a;                              

                         }else{

                                c=b;

                         }

               解法B:

                       int a = 5;

                       int b = 6;

                       int c = a>b?a:b;

相比较之下:运用三目运算可以减一大段判断语句的书写,提高程序的简洁性。

解析:数据类型 变量 = 布尔表达式?布尔表达式正确时返回的结果:布尔表达式错误时返回的结果;

3:逻辑运算符

种类:简单与“&”,简单或“|”,短路与“&&”,短路或“||”

if(A&B){return true;} else{return false;}         A,B都进行判断,然后返回结果

if(A|B){return true;}  {return false;}                 A,B都进行判断,然后返回结果

if(A&&B){return true;} {return false;}             当A正确时再判断B,然后返回结果,当A错误时不再判断B,直接返回结果

if(A||B){return true;}{return false;}                  当A错误时再判断B,然后返回结果,当A正确时不再判断B,直接返回结果

总结:在我们开发过程中尽量使用“&&”和“||”。

4:位运算符

位运算符主要针对二进制,它分为四种:“与”、“非”、“或”、“异或”。有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。

简单举个例子:2&3=3  2|3=2

2     二进制      00000000 00000000 00000000 00000010

3     二进制      00000000 00000000 00000000 00000011

&结果               00000000 00000000 00000000 00000011

|结果                 00000000 00000000 00000000 00000010

注意:基本上这些我们只需了解,底层的实现在我们日常开发过程中不用太多考虑,只需要注意的是“&”,“|”能进行位操作,而“&&”,“||”不能。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表