Java中&&和&的区别
&&第一个表达式为false
int i = 0; if(i == 3 && ++i > 0 ) { } System.out.println("i = " + i); console:i = 0 ==>第二个表达式没有执行
&第一个表达式为false
int i = 0; if(i == 3 & ++i > 0 ) { } System.out.println("i = " + i); console:i = 1 ==>第二个表达式执行了

更多精彩
&&第一个表达式为false
int i = 0; if(i == 3 && ++i > 0 ) { } System.out.println("i = " + i); console:i = 0 ==>第二个表达式没有执行
&第一个表达式为false
int i = 0; if(i == 3 & ++i > 0 ) { } System.out.println("i = " + i); console:i = 1 ==>第二个表达式执行了