& 和 && 的区别
# 一、&和&&的区别
- &:位运算符(按位与);&&:逻辑运算符
- &是左右都为true,结果才为true,且两边均要比较
- &&也是左右都为true,结果才为true,但只要左边为false,就不再看右边的结果了,直接返回结果为false
&&的情况:输出"不合法"
String userName;
if(userName !=null && !userName.equals("")){
System.out.println("不为空");
}else{
System.out.println("不合法");
}
&的情况:空指针异常:userName.equals("")产生的
String userName;
if(userName!=null & !userName.equals("")){
}else{
System.out.println("不合法");
}