java 的 && 和 & 、|| 和 | 区别

&& : if( (a > b ) && ( b > c )){
//if语句中必须都有true才执行
};
&: if((a > b ) & ( b > c )){
//也可以执行
};
区别1:
&&、|| : 都存在(短路)的操作;
&、| :不存在短路,都是按照二进制的位运算;
位运算:将两个数字转为二进制进行运算;
&:是以乘法的方式:上下两数相乘有0值就0
0000 0101; //5
0000 0011; //3
0000 0001; //1
System.out.println( 5 & 3); //1
|:是以加法的方式:上下两数相加有1值就1(不进行进位)
区别2:单&、单|,左边无论真假,右边都进行运算;
&&、||,左边为真,右边参与运算。左边为假,右边不参与运算;
二进制的按位取反(~5 (飘5))

// 打印-6 、写出5的二进制形式 ,取反—–1010(负数,结果值),在进行补码(取反加1) 从右边开始除了第一个1,其他全部取反,—-0110(6);

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值