单个&时,即使左边已经不成立依旧会继续判断右边的表达式

使用&&时,从左到右判断一旦遇到不成立的值将停止继续执行右边表达式

事例【java】:

在判断一个可能为null的字符串的内容是否为空时:

1
2
String a=null;
if(a!=null&a.isEmpty())

左边已判断a!=null不成立,依旧会执行右边isempty,但a是null无法执行方法,所以会导致空指针异常

1
2
String a=null;
if(a!=null&&a.isEmpty())

左边判断不成立后,右边不会执行

左边成立后右边继续判断直到全部成立再执行操作

正常运行

“|”与“||”等其它正则运算符同理🙂