黑马程序员技术交流社区
标题:
判断&&和||的一个小问题!求技术分
[打印本页]
作者:
李会成
时间:
2013-2-1 16:36
标题:
判断&&和||的一个小问题!求技术分
本帖最后由 李会成 于 2013-2-1 18:22 编辑
//&&:当左边为false,时右边可以不判断,但是左边为true时,右边要判断
int x =0,y = 0,i = 10,j = 20;
if(i >0 && j >15){// i >0为true ,接着判断j>15也为true
x++;//这里x=1
System.out.println("x="+x);//打印出也是x=1
}
if(i >10 || j >15){//i >10为false ,接着判断j>15为true,结果还是为true
y++; //y=1
System.out.println("y="+y);//打印出也是y=1
}
新手初学java,问题可能比较菜,但是确实搞不懂,多谢各位帮助我
作者:
杨杨
时间:
2013-2-1 16:47
没发现你的问题
作者:
李尧
时间:
2013-2-1 16:49
卤主你想表达什么?我感觉你说得挺清楚的吖....
作者:
陈科宇
时间:
2013-2-1 17:10
楼主,我运行了你的代码,我不知道你是对这部分代码不懂还是怎么一回事儿。如果是对这块代码不懂,可以加Q讨论。本人QQ:1612428643。在讨论中学习,共同进步。
作者:
王昕
时间:
2013-2-1 17:18
本帖最后由 王昕 于 2013-2-1 18:05 编辑
短路运算符:&&和||
&&:左边为false不再计算右边,返回false。
||:左边为true不再计算右边,返回true。
如果想让右边的表达式无论左边是真还是假都执行,可以用非短路运算符: & 和 | ,这样右边的表达式一定会计算。
我是看的英文版,自己翻译的短路和非短路,中文好像叫短运算符&&和||和长运算符&和|。
“与”运算是全真为真,一假即假,所以左边为假肯定是假;“或”运算是一真即真,全假为假,所以左边为真肯定是真。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2