Java &和&&的区别

 
&运算符有两种用法 按位与和逻辑与
&&与运算符是短路与运算。逻辑与和短路与的差别是很大的,虽然两者都要求运算符的两边的布尔值都为true,整个表达式的值才为true
&&之所以称为短路运算是因为,如果&&左边的表达式的值为false 右边的表达式会被直接短路掉,不会进行运算,很多时候我们都会用&&而不是单&,不会进行运算,很多时候我们都会用&&而不是单&,例如在验证用户登录的时候判断用户名不是null,不是空字符串应当写为 username != null && !username.equals(""),二者的顺序不能交换,更不能用单&运算符,因为第一个条件不成立根本不能进行 equals比较 否则会产生 NullPointerException 异常,注意逻辑或运算符丨和短路或运算符(丨丨)的差别也是如此

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值