&和&& 区别
1.&和&& 都可以用作逻辑运算符,表示“与”,“和”的意思,当运算符两边的表达式的结果都为true时,则结果返回 true,否则,有一个为false时,则返回false。
(false&false = false)
单个&也可作为位运算符,对二进制进行运算,(1101&1001 = 1011)(这里提一下:二进制转换十进制方式:对2取余或者乘以2)。
多数据时,不管结果返回true还是false,都会继续判断下一个
&&表示逻辑运算,具有短路的功能,如第一个表达式为false,则不运算下面的,后面的表达式不会再执行,不会报错。
效率:&&效率比&效率高,会报NotPointerException。
首先要记住,&&效率比&效率高,因为&&一旦 false 直接返回结果, 而&还会继续判断,直到结束。