javase小知识 &与&&,|与||

&与&&,|与||

逻辑运算符与(&,&&),或(|,||);

&和&&都代表与也就是and,|和||都代表或者也就是or;他们的判断结果相同,但是运算的效率不同;&和|当一个条件能够决定整个结果的时候,并不会停止判断,&&和||当一个条件能够决定整个结果的时候就不会继续判断;

 //&与&&
 System.out.println(true&true)//true
 System.out.println(true&false)//false
    System.out.println(false&false)//false
    System.out.println(false&false)//false
  
 System.out.println(true&&true)//true
 System.out.println(true&&false)//false
    System.out.println(false&&false)//false
    System.out.println(false&&false)//false
  
  //|与||
 
System.out.println(true|true)//true
System.out.println(true|false)//true
System.out.println(false|false)//false
System.out.println(false|true)//true
System.out.println(true||true)//true
System.out.println(true||false)//true
System.out.println(false||false)//false
System.out.println(false||true)//true

     

如何判断是否短路

int a=1;
int b=1;
System.out.print(a==2&++b==2)//false
//因为a并不等于2第一个条件为false当时他还是执行了第二个条件所以&并没有短路
System.out.print(a+"  "+b)//1  2
System.out.print(a==2&&++b==2)//false
//第一个条件为false可以判断整个条件第二个条件并没有执行所以&&具有短路的特征
System.out.printlb(a+"  "+b)//1 2


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值