java 运算符 >>_Java运算符使用

复合运算符:

+=:把右边的数值与变量的值相加后赋值给变量。例如:int a=10;  a+=10;此时a的值为20,和a=a+10;的意思是一样的。

-=:把右边的数值与变量的值相减后赋值给变量。例如:int a=10;  a-=10;此时a的值为0,和a=a-10;的意思是一样的。

*=:把右边的数值与变量的值相乘后赋值给变量。例如:int a=10;  a*=10;此时a的值为100,和int a=a*10;的意思是一样的。

/=:把右边的数值与变量的值相减后赋值给变量。例如:int a=10; a/=10;此时a的值为1,和a=a/10;的意思是一样的。

%=:把右边的数值与变量的值相减后赋值给变量。例如:int a=10;  a%=10;此时a的值为0,和a=a%10;的意思是一样的。

这种写法可读性不是很好,所以一般用得少,只是一种简写的方式。

关系运算符:

>:用于比较一个值是否为大于另一个值的关系,是则返回结果为真(true),不是则返回结果为假(false)。例如:

20b81a4ecc55b294c6171959e1054504.gif

20b81a4ecc55b294c6171959e1054504.gif

>=:用于比较一个值是否为大于或等于另一个值的关系,是则返回结果为真(true),不是则返回结果为假(false)。例如:

20b81a4ecc55b294c6171959e1054504.gif

<=:用于比较一个值是否为小于或等于另一个值的关系,是则返回结果为真(true),不是则返回结果为假(false)。例如:

20b81a4ecc55b294c6171959e1054504.gif

==:用于比较一个值是否为等于另一个值的关系,是则返回结果为真(true),不是则返回结果为假(false)。例如:

20b81a4ecc55b294c6171959e1054504.gif

!=:用于比较一个值是否为不等于另一个值的关系,是则返回结果为真(true),不是则返回结果为假(false)。例如:

20b81a4ecc55b294c6171959e1054504.gif

关系运算符主要用于各种变量值的值与值之间的关系比较,就像生活中经常会比较薪资是否大于或小于八千,身高是否大于等于一米七,这个人是否等于有车有房之类的,也是关系比较的运用。例如:

20b81a4ecc55b294c6171959e1054504.gif

逻辑运算符:

&&:与,是同时的意思:比较两方的值是否都为true,只要有一方的值为false结果就为false。例如:

A         B         结果

true  &&   false       false

false  &&   true       false

true  &&   rue        true

false  &&  false        false

||: 或,是或者的意思:比较两方的值是否有一方为true,只要有一方的值为true结果就为true。例如:

A         B          结果

true  ||   false        true

false  ||   true        true

True  ||   true        true

false  ||   false        false

!:  非,是取反的意思:只要是值为true的结果就为false,值为false的结果就为true。就是反过来的意思。例如:

A           !A结果

true     !    false

false     !    true

用&&运算符时前面的值为true,则后面的还继续运行看看是否true,如果前面为false则后面不在再运行,因为条件已经不成立了。

用||运算符时前面的值为true,后面的就不再运行,因为条件已经成立了;如果前面为false,则后面继续运行看看是否为true或false。

位运算符:

计算机最小的单位是位,位运算符是针对位进行运算的。

&:与,两方都为1才为1,一方为0则为0;例如:

0000 0000 0000 0000 0000 0000 0000 0111

0000 0000 0000 0000 0000 0000 0001 0111

结果:

0000 0000 0000 0000 0000 0000 0000 0111

|:或,一方为1则为1,两方都为0才为0;例如:

0000 0000 0000 0000 0000 0000 0001 0101

0000 0000 0000 0000 0000 0000 1001 0111

结果:

0000 0000 0000 0000 0000 0000 1001 0111

~:非,取反,0取反为1 , 1取反为0;例如

0000 0000 0000 0000 0000 0000 1001 0111

结果

1111 1111 1111 1111 1111 1111 0110 1000

^:异或,类似于不等于,两方都为1就为0,两方为0还是为0,

两方都不为1都不为0才为1;例如:

0000 0000 0000 0000 0000 0000 0001 0101

0000 0000 0000 0000 0000 0000 1001 0111

结果:

0000 0000 0000 0000 0000 0000 1000 0010

>>:右移,往右移动两位,负数高位补1,正数高位补0;例如:

正数:6>>2

0000 0000 0000 0000 0000 0000 0000 0110

结果:

0000 0000 0000 0000 0000 0000 0000 0001

负数:-6>>2

1111 1111 1111 1111 1111 1111 1111 1010

结果:

1111 1111 1111 1111 1111 1111 1111 1110

<

正数:6<<2

0000 0000 0000 0000 0000 0000 0000 0110

结果:

0000 0000 0000 0000 0000 0000 0001 1000

负数:-6<<2

1111 1111 1111 1111 1111 1111 1111 1010

结果:

1111 1111 1111 1111 1111 1111 1110 1000

>>>:无符号右移,向右移动两位,正数负数都是高位补0,例如:

正数:6>>>2

0000 0000 0000 0000 0000 0000 0000 0110

结果:

0000 0000 0000 0000 0000 0000 0000 0001

负数:-6>>>2

1111 1111 1111 1111 1111 1111 1111 1010

结果:

0011 1111 1111 1111 1111 1111 1111 1110

总结:

1.复合运算符在开发上能起到简写代码的作用,并且不会发生数据类型转换的一些错误,但是由于这种写法可读性比较差,所以一般团队开发中不常用。

2.关系运算符是经常用到的运算符也是比较重要的运算符,因为程序中需要进行很多比较、判断条件来确认程序是否继续执行或执行哪一块。就像生活中你对手机屏幕尺寸的条件要求是不能大于5英寸,屏幕分辨率不能小于1080*920等,这些都是类似于关系运算符在代码中的作用。

3.逻辑运算符也是经常用到的运算符,是需要掌握好的一个知识点,因为有时候程序中会需要用到多重条件来进行判断,这些个条件成立则继续运行,不成立则跳出或者执行另一片代码。就像平时生活中去买菜一样,你要求这个菜要同时等于新鲜和便宜才会买否则不买或买其他的;买车你会要求小于等于20万或等于预算资金,其中一个条件满足你才会买,否则也是不买或买其他的;这些都是多个条件的判断。

4.位运算符主要是针对位的一个运算,在项目开发中基本不怎么用得上, 除非在很小的存储器、微机、单片机里面进行的开发,不过稍微学习一下倒是能够增加对二进制的一些了解。

本文转自 ZeroOne01 51CTO博客,原文链接:http://blog.51cto.com/zero01/1955676,如需转载请自行联系原作者

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值