JAVA中“&”与“&&”,“|”与“||”的区别

JAVA中:
逻辑运算符有:”&&”(短路与),”&”,”|”,”||”(短路或)。
“&&”和“&”的区别:
“&&”:只要第一个条件为false,后面条件就不再判断。
“&”:对所有的条件都进行判断,不管第一个条件是否是true
“|”和“||”的区别:
“|”:对所有的条件进行判断
“||”:只要第一个条件为true,后面的条件就不再判断
实例代码:
“&&”第一种情况:(true) && (true)结果为true,“&&”右边会执行
即当左边为true时会判断右边的值,如果右边为true则结果为true,如果右边为false则整体结果为false。

public static void main(String[] args) {
    //定义一个变量作为标记
    int k=0;
    //这里要注意左“++”和右“++”的区别,这里使用左“++”
    if ((1 == 1) && (++k==1)) {
        System.out.println("我是if中的K="+k);
    } else {
        System.out.println("我是else中的k="+k);
    }
}

总结:这里要弄清左“++”和右“++”的区别,否则会弄巧成拙。
当“&&”左边条件满足时,右边会执行,但是执行右边的“++k”是先进行“++”后进行“==”运算所以这是整体的值为“true”,此时“k=1”。说明“&&”右边条件执行了。

“&&”第二种情况:(false)&&(true)结果为false,“&&”右边不会执行
即如果“&&”左边条件为false则“&&”右边的条件不会执行,整体结果为false。

public static void main(String[] args) {
    //定义一个变量作为标记
    int k=0;
    //这里要注意左“++”和右“++”的区别,这里使用左“++”
    if ((2 == 1) && (++k==1)) {
        System.out.println("我是if中的K="+k);
    } else {
        System.out.println("我是else中的k="+k);
    }
}

总结:这里要弄清左“++”和右“++”的区别,否则会弄巧成拙。
当“&&”左边的条件不满足时,右边不会执行,直接走else,此时“k=0”。说明“&&”右边条件没有走。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值