&&和&,||和|的区别

  逻辑运算符&& 和 & 都表示且, || 和 | 都表示或,单拼和双拼的区别在于:是否会对后续操作进行短路。

 

  对于‘且’操作,有全真则真,一假则假的判断规则。         在使用&&时,一旦判断出前一个表达式为假,程序会像我们做数学题一样,立刻终止判断,短路后面的表达式;但在使用&时,程序还会继续执行第二个表达式

  下面两段代码分别对&&和&进行了测试,执行后会发现,在使用&&时,i最终等于1;在使用&时,i最终等于2。            || 与 | 的关系也是同理。

  

1         int i=1;
2         if(i == 2 && i++ == 2){ }
3         System.out.println(i);
4         
5         /*int i=1;
6         if(i == 2 & i++ == 2){ }
7         System.out.println(i);  */

 

posted @ 2020-07-22 11:36  leatral  阅读(506)  评论(0编辑  收藏  举报