java中&和&&是怎么运算的

java中&和&&是怎么运算的


米琪卡哇伊
浏览 602回答 2
2回答

忽然笑

& 和 && 相同点:都表示“与”操作。这里的“与”和数学中的“与或非”中的“与”意义相同,都遵循“一假必假”原则。即“与”符号两边的元素只要有一个为假,"与"操作执行后的结果就为假。& 和 && 的区别:1)& 表示“按位与",这里的”位“是指二进制位(bit)。例:十进制数字8 转化为二进制是:1000 ;数字9 转化为二进制是1001 。则如有以下程序:public class Test {public static void main(String[] args) {System.out.println(9 & 8);}}输出结果应该是:8原因:1001 & 1000 = 1000 。 计算机中一般1表示真,0表示假。最左边一位1&1=1,最右边一位1&0 = 0.2) && 表示逻辑”与“ ,即java中的boolean值才可以存在于&&符号的左右两侧。true && false = false ,true && true = true , 依旧是"一假必假"。值的注意的是:&& 符号有所谓的“短路原则”,当 A && B 出现时,如果A经判断是假,那么B表达式将不会获得执行或被判断的机会。直接结果就为假。注:关于十进制与二进制的转换,简单的说每四位可以遵循”8421“原则,1001即8+1=9,1011即8+2+1=11

婷婷同学_

&是位运算,假如P为真。那么p & p = 1(为真),p & 非P = 0(假),只有均为真才为真,那么针对位操作就是 两个同时为 1 ,那么& 运算之后就是1,如果有一个不为1,那么就是0;&&是逻辑与运算,假如P为真,Q为真,那么 p && q两个都是真,就满足,用来做逻辑判断,仅仅是逻辑判断,不涉及到位操作。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java