&&和&的区别,以及||和|的区别

&&:短路与

&:逻辑与

||短路或

|逻辑或者

&&是顺序执行,一旦执行遇到false,则不执行后面的程序

&是全部执行,

||是顺序执行,一旦遇到符合条件的程序就不继续执行了

|是全部执行,

事例代码如下:

package Test;
/**
 * (逻辑与)&和(短路与)&&的区别
 *      逻辑或|和短路或||的区别
 *      逻辑是全部执行,短路是顺序执行的
 */
public class Test01 {
    public static void main(String[] args) {
        int i=5;
        boolean n=i>6&i++>7;
        System.out.println(n);
        System.out.println(i);
        //逻辑与&两个都进行判断是否为假,一个为假则全为假,所以最后i=6,因为i++被执行了
         tii();
    }

    public static void tii (){
        int i=5;
        boolean n=i>6&&i++>7;
        System.out.println(n);
        System.out.println(i);
        /**
         * 短路与&&先判断第一个是否为假,第一个为假,肯定全部为假,则不判断第二个的了,
            所以i++>7没有被执行,所以i=5 ,所以短路与是按照顺序判断的,一旦有错误
            后面就不执行了
         */
    }
    
}
原文地址:https://www.cnblogs.com/javastu/p/5500651.html