位运算符,逻辑运算符,比较运算符

位运算符: 区别逻辑运算符
举例:
System.out.println(5 & 9); //将输出1
5—0000 0101(省略前面24个0) 9 ——-0000 1001(省略前面24个0)

0000 0101

& 0000 1001
——————
0000 0001=1

———————————————————————————————————————————————————————————————————————————
System.out.println(5 | 9); //将输出13
0000 0101
| 0000 1001
————————
0000 1101=13

————————————————————————————————————————————————————————————————————————————

比较运算符:

只支持左右两边是数值
= 只支持左右两边是数值
< 只支持左右两边是数值
<= 只支持左右两边是数值
== 如果进行比较的两个操作数都是数值类型,即使他们的数据类型不同,只要他们的值相等,也都将返回true.
例如 97=‘a’将返回true 5.0=5也将返回true
!=


逻辑运算符:
&& 与 :前后两个操作数都是true才返回true,否则返回false (当前面为false时,不去计算后一个直接返回false)
& 不短路与:作用与&&相同,但不会短路(即使前面为false,也要继续计算后一个)
|| 或:只要两个操作数一个为true,就返回true,否则返回false
| 不短路或:作用与 || 相同,只是不短路。
! 非
^ 异或:当两个操作数不同时才返回true,两个操作数相同返回false。
————————————————————————————————————————————————————————————————————
逻辑运算符举例***********************

//直接对false求非运算,将返回true
System.out.println(!false);

//5>3返回true,‘6’转换为整数为54,’6’>10返回true,求与后返回true。
System.out.println(5 >3 && ‘6’ >10);

//4>=5返回false ‘c’>’a’ 返回true,求或之后返回true
System.out.println(4>=5 || ‘c’ >’a’);

//4>=5返回false ‘c’>’a’ 返回true,两个不同的操作数求异或返回true
System.out.println(4>=5 ^ ‘c’ >’a’);
——————————————————————————————————————————————————————————
| 和 || 的区别:

int a =5;
int b=10;
if(a>4 | b++ >10){
System.out.println(“a的值是:”+a+”,b的值是:”+b);
}

//输出a为5,b为11。说明b++得到了计算。

int a =5;
int b=10;
if(a>4 | | b++ >10){
System.out.println(“a的值是:”+a+”,b的值是:”+b);
}

//输出a为 5,b为10。b++没有得到计算,也就是短路了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值