php中&&与&有什么区别
6个回答
展开全部
PHP中&&与&的区别:
1、运算符性质的区别
&&在PHP中是一个逻辑操作符,也叫条件操作符。
&是逻辑语言,逻辑上表示两者属于缺一不可的关系,还可以表示一个人和另外一个人之意,与and同义。如A&B,表示A与B,A和B,A×B。
2、作用上的区别
&&就是判断两个表达式的真假性,只有两个表达式同时为真才为真,有一个为假则为假,具有短路性质。
&是将两个二进制的数逐位相与,结果是相与之后的结果。
3、用途上的区别
&&:x&&y——功能描述: “条件与”:x和y均为true,取值是true,否则取值是false。&&需要两个操作数的值都是true时,才取值true,但是两个操作符还是有区别的:使用方法是int&& rx=x。
&:是一个位运算符。参加运算的两个数的二进制形式,每一个二进制位进行”与“运算,最后的结果二进制作为结果,例如:3 & 5=1,因为3和5的二进制分别是0011、0101,两个进行与运算的结果是0001。
参考资料来源:百度百科 &&
参考资料来源:百度百科 &
展开全部
&&是逻辑运算”与“,参加运算的两个量理解为逻辑值TRUE、FALSE在进行运算,两个值都为TRUE时结果为TRUE,否则结果为FALSE,例如:3 && 5的结果为TRUE。
&是数学运算”按位与“,参加运算的两个数的二进制形式,每一个二进制位进行”与“运算,最后的结果二进制作为结果,例如:3 & 5=1,因为3和5的二进制分别是0011、0101,两个进行与运算的结果是0001。
&是数学运算”按位与“,参加运算的两个数的二进制形式,每一个二进制位进行”与“运算,最后的结果二进制作为结果,例如:3 & 5=1,因为3和5的二进制分别是0011、0101,两个进行与运算的结果是0001。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
完全不一样的东西。
&&是逻辑运算符,代表“并且”也就是常说的 AND。常见的还有如下几个:
!$a Not(逻辑非) TRUE,如果 $a 不为 TRUE。
$a && $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。
$a || $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。
---------
&是位运算符,$c = $a & $b, 将把 $a 和 $b 的二进制位中都为 1 的位设为 1。
如5&3
=>101 & 11 这个是二进制
=>1
&&是逻辑运算符,代表“并且”也就是常说的 AND。常见的还有如下几个:
!$a Not(逻辑非) TRUE,如果 $a 不为 TRUE。
$a && $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。
$a || $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。
---------
&是位运算符,$c = $a & $b, 将把 $a 和 $b 的二进制位中都为 1 的位设为 1。
如5&3
=>101 & 11 这个是二进制
=>1
追问
谢谢
追答
你的问题解决了吗?解决了的话 麻烦采纳答案啊
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在其他语言里&既是逻辑运算符也是位运算符,因为他是强类型语言,不会有复杂的类型转换问题,运算场景很单一 ,只有布尔和数值2种类型
php中 逻辑运算符中的与的形式只有&&和and 没有& ,或也是一样
&在php中只会当位运算符处理,因为php的数据类型都是可以相互转换进行运算的,这会增加逻辑与&和按位与&之间的运算上的歧义,不知道到底这个运算符是当做那种运算符进行使用
如果&是按照运算环境不同而当成不同的运算符使用, 那么下面这个表达式到底该怎么运算?是转换成布尔类型进行逻辑运算?还是转换成数字类型进行位运算?只会增加复杂性,所以php中 &如果2边都有操作数,统一当做位运算符使用,所以下列输出结果就是1 可以使用var_dump函数输出就能看到真实的运算后的类型
"1"&"1"
逻辑与&和and的区别就是:
&在表达式左边为假的时候,右边就不判断了,而and是左边假,右边依然进行判断,效率低些
or与||同理
php中 逻辑运算符中的与的形式只有&&和and 没有& ,或也是一样
&在php中只会当位运算符处理,因为php的数据类型都是可以相互转换进行运算的,这会增加逻辑与&和按位与&之间的运算上的歧义,不知道到底这个运算符是当做那种运算符进行使用
如果&是按照运算环境不同而当成不同的运算符使用, 那么下面这个表达式到底该怎么运算?是转换成布尔类型进行逻辑运算?还是转换成数字类型进行位运算?只会增加复杂性,所以php中 &如果2边都有操作数,统一当做位运算符使用,所以下列输出结果就是1 可以使用var_dump函数输出就能看到真实的运算后的类型
"1"&"1"
逻辑与&和and的区别就是:
&在表达式左边为假的时候,右边就不判断了,而and是左边假,右边依然进行判断,效率低些
or与||同理
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果是用做逻辑与的话是没什么区别的
但是一个&放在变量前面就是引用传值
但是一个&放在变量前面就是引用传值
追问
谢谢
追答
谢谢管什么用啊,你倒是采纳啊。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |