本质区别:&&和||是逻辑运算符,&和|可以是逻辑运算符也可以是位运算符
&&与&的区别:
1. 执行 :3>5&&3>2 3>5&3>2 时
使用&&时,左边3>5为false了就不会判断右边,是短路与,提高了性能,即左边为false了就会短路再判断右边
使用&时,左边3>5为为false了仍然会判断右边,即不管怎么样都会判断量词
2.&& 和& 判断的结果是相同的,因为&&是短路与,可能会出现判断次数不同,但结果是相同的。&&能提升性能
||和|的区别:
1. 执行 3>2||3>5 3>2|3>5时
使用|| 左边3>2为true,整个结果为true,右边不再判断,会发生短路
使用|左边3>2为true,整个结果为true,右边仍然会继续判断,没有短路
2.执行结果相同,但||可能会发生短路,导致判断次数不同,||能提升性能
|和&能做位运算符,|按位或 &按位与
3&5=011&101=001=1
3|5=011|111=111=7