Java教程

&和&&2个运算符的区别是什么

Java1000个问题 小海豚博客管理员 2020-03-18 23:05:28.0 300 0条

位运算与逻辑运算的运算符比较相似,例如&和&&就只有字符数量的差别,但这只是在视觉上,它们的用途并不相同。前者属于位运算,后者是逻辑运算,而逻辑运算主要是用于条件判断的。另外,&&运算符在左侧表达式为flse时,不会再执行运算,从而提高运算速度。 &是位运算符,表示按位与运算:&&是逻辑运算符,表示逻辑与运算,&&运算符的效率更高。

按位与的运算规则:

当两个整数进行按位与运算时,如果对应位都是1,则结果为1,否则结果为0。如果参加运算的两个数精度不同,则结果转换为精度较高的数据类型。 下面以3和6进行按位与运算为例讲解按位与的运算过程。
整数3的二进制表示为: 00000000 00000000 00000000 00000011
整数6的二进制表示为: 00000000 00000000 00000000 00000110
按位与运算的结果为2: 00000000 00000000 00000000 00000010
说明: 由于3和6的二进制数右边第2位都是1,所以计算结果中右边第2位也是1,而3和6的二进制数其他对应位不都为1,所以其他对应位的计算结果都为0

逻辑与的运算规则:

当用&&连接的两个表达式都为真时,整个表达式为真,否则为假。

A B A&&B
true true true
true false false
false true false
false false false
暗锚,解决锚点偏移

文章评论

嘿,来试试登录吧!