当运算符两边的 表达式的结果都为 true 时,整个运算结果才为 true ,否则,只要有一方为 false , 则结果为 false 。
例如,对于 if(str != null && !str.equals(“”)) 表达式,当 str 为 null 时,后面 的表达式不会执行,所以不会出现 NullPointerException 如果将 && 改为 & ,则会抛出NullPointerException空指针 异常。另外:If(x==1 & ++y>0) y 会增加而If(x==1 && ++y>0) 不会增加