详解java中&&和&

来源:互联网 发布:软件初级工程师 编辑:程序博客网 时间:2024/06/05 22:52

一 . 首先两者都是逻辑与运算

1.都具备逻辑与的功能

        if (true&&true) {            System.out.println("true");        }        //结果:true        if (true&true) {            System.out.println("true");        }        //结果:true

2.&&具有短路的功能 ,而&则没有这个功能

        int i = 1, j = 1;        if (i++ > 3 && j++ > 2) {        }        System.out.println("i:" + i + "\tj:" + j);        //结果:i:2    j:1        int i = 1, j = 1;        if (i++ > 3 & j++ > 2) {        }        System.out.println("i:" + i + "\tj:" + j);        //结果i:2 j:2

二 . &不仅是逻辑与运算,而且当&的两边不是boolean类型时,&则表达的是按位与的操作

        int i = 2, j = 3; //2=00000010 3=00000011        System.out.println("i&j : " + (i&j));        //结果:i&j : 2
2 0
原创粉丝点击