黑马程序员技术交流社区
标题:
|、&与||、&&的区别
[打印本页]
作者:
huanxiang0220
时间:
2015-2-23 02:54
标题:
|、&与||、&&的区别
&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。而我们在开发中,遇到&或者| 我可以将他们转换成双&、双||,这样可以提高效率,原由是:
当表达式&&左边的结果是false时,发生短路,不用在计算右边的表达式,整个结果都为false。
当表达式||左边的结果是ture时,发生短路时,不用在计算右边的表达式,这个结果为true。
代码体现:
&与&&:
Java代码
if(expression1 & expression2){}
中expression1 和expression2 无论expression1返回true还是false,都会继续判断expression2的返回值
Java代码
public class Test4{
public static void main(String args[]){
if(10==10||10/0==0){
System.out.println("条件满足") ;
}
}
};
|与||
Java代码
public class Test4{
public static void main(String args[]){
if(10==10||10/0==0){
System.out.println("条件满足") ;
}
}
};
这个程序执行会报错,因为程序会去判断每一个表达式,而下面:
Java代码
public class Test4{
public static void main(String args[]){
if(10==10||10/0==0){
System.out.println("条件满足") ;
}
}
};
作者:
彭春晓
时间:
2015-2-23 08:54
学习了。
作者:
liu1098
时间:
2015-2-23 13:39
兄弟,你黑马币换一下技术分,基本上就够25了,恭喜啊,哈哈。
作者:
liaohongjie
时间:
2015-2-23 16:18
恩恩,谢谢分享!!!!!!
作者:
浮夸
时间:
2015-2-23 17:15
赞一下
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2