摘要:
一直以来对于逻辑与(&&)和按位与(&)的区别不是很确定。今天上网找了一下,然后也写代码验证了一下,现将其区别整理如下,供大家一起探讨。操作数都为数字时 a. 对于两个数字进行按位与(&),会将两数字转换为二进制,然后右对齐后(不足位补零),相应位做与操作,如11&3,11的二进制表示是1011,3的二进制表示是11,右对齐后做与操作后,如图所示: 得到的结果是3。 b. 对于两个数字进行逻辑与(&&),会将两个操作数都转换成Boolean逻辑值(不为0的数字则为true,否则为false),然后再做与操作。 演示代码如下: static 阅读全文