学java的时候,教材里提到过&&比&更快捷所以称为简洁与,但是,与&的差别真的很大么?
有没有谁举一个比较直观的例子来说说。
&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)也叫短路与。
逻辑操作(&,|,)与条件操作(&&,||)的区别。
区别主要答两点:
1.条件操作只能操作布尔型的,而逻辑操作不仅可以操作布尔型,而且可以操作数值型
2.逻辑操作不会产生短路
普通与(&):表示所有的判断条件都要执行,不管前面是否满足;
短路与(&&):如果前面的条件已经是false了,那么后面的条件不需要再进行任何的判断;
&是位运算符,&&是逻辑运算符
在逻辑运算符中,&表示前后的条件都进行判断,&&表示如果前面的条件是false后,后边的条件不进行判断
我试过,结果是一样的
比如说:4 & 5 -------> 0100 & 0101 ---------> 0100 -------->4 按位余
(1+2>3) &&(1+1=2) -------> false 前边条件都为false,短路与了,不管后面是true或者false结果都是false了
&是位运算符,&&是逻辑与运算,是两个概念
&是位运算符,&&是逻辑运算符