Java中&&和&的区别
Java中&&和&都是表示与的逻辑运算符,都表示逻辑运输符and,当两边的表达式都为true的时候,整个运算结果才为true,否则为false。
区别在于:
-
&&具有短路功能,当第一个表达式为false的时候,后续的表达式并不进行计算和判断
public class test { public static void main(String[] args) { boolean flag = 10%2 == 1 && 10 / 3 == 0 && 1 / 0 == 0 ;//注意:因为短路功能的存在,最后一项并不进行计算,所以不存在报错的情况出现 System.out.println(flag ? "mldn" : "yootk") ; } }
-
&可以作为位运算符使用, 当&两边的表达式不为boolean类型的时候会被作为位运算符进行计算