您的位置:首页 > 其它

变量运算符思路练习

2012-05-19 20:49 134 查看
请写出下来各题的结果:先分析得出结果,后可以通过运行来得到结果进行验证。

第一题
int x = 1,y = 1;

if(x++==2 & ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);

因为 x++ != 2,&不带短路效果.if后面条件执行语句判断为false所以if后面表达式不成立,不起作用.但是x和y已经完成了自增的操作.所以输出为x=2 y=2
-------------------------------------------------
第二题
int x = 1,y = 1;

if(x++==2 && ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);

&&带有短路效果 x++==2是false后面不再执行.所以结果是x=2 y=1
---------------------------------------------------

第三题
int x = 1,y = 1;

if(x++==1 | ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);

x++==1是true,并且表达式是 用 |逻辑运算符连接的,因此x=7 y=2
---------------------------------------------------

第四题
int x = 1,y = 1;

if(x++==1 || ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);

||连接前面为true后面不执行,结果是x=7 y=1
---------------------------------------------------
第五题
boolean b = true;

if(b==false)
System.out.println("a");
else if(b)
System.out.println("b");
else if(!b)
System.out.println("c");
else
System.out.println("d");

b
---------------------------------------------------b
第六题
int x = 2,y=3;

switch(x)
{
default:
y++;
case 3:
y++;
case 4:
y++;
}

System.out.println("y="+y);

Y=6
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c