if(a != b & b == c)和if(a != b && b == c)有什么区别?
一个是逻辑与,一个是算数与
因为你是两个条件相与,所以没什么区别
算数与主要用于位操作
有帮助望采纳
if(a != b & b == c)和if(a != b && b == c)
&和&&区别在于
&中第一个条件不满足时,还会继续判断第二个条件是否满足。
&&中第一个条件不满足时,则不会再去判断第二个条件是否满足。性能好一点。
从最终的if结果来说,比较接近,但从概念上来说,区别还是比较大的
&&是逻辑与,前后都是表达式,表达式的结果为true或者false。如果左侧表达式结果为false时,右侧表达式是不执行的,这点很重要
&是位与,和加减乘除类似,由于a!=b和b==c的结果为true或者false,也就是1或者0,但左右两侧都会执行,不会因为a!=b为false就不执行b==c的判断。整个表达式结果也需要两侧都为1,结果才为1,否则为0