写在前面:习题和答案是网友提供的,但是详解是楼主自己写的,大家有不懂得可以提问我。还有就是第五题不知道有谁做过原版,我看不懂原题的意思是什么?现在在自学JAVA,有一起的同学 MMM我。。。boolean b = true;if(b=false) //如果写成if(b=false)有结果吗?如果有,结果是?
下面是习题
class IfSwitchTest
{
public static void main(String[] args)
{
//第一题
int x = 1,y=1;
if(x++==2 & ++y==2) //设a=x++,a=1(a!=2),x=2. b=++y,b=2,y=2. 所以if条件判断为false。
{
x =7;
}
System.out.println("x="+x+",y="+y);//x=2,y=2
//第二题
int x = 1,y = 1;
if(x++==2 && ++y==2) //双&&意思是如果左边不成立,则不计算右边。a=x++,a=1(a!=2),x=2.所以if条件判断为false。
{
x =7;
}
System.out.println("x="+x+",y="+y);//x=2,y=1
//第三题
int x = 1,y = 1;
if(x++==1 | ++y==1)//设a=x++,a=1,x=2. b=++y,b=2,y=2. 所以if条件判断为为true。
{
x =7;
}
System.out.println("x="+x+",y="+y);//x=7,y=2
//第四题
int x = 1,y = 1;
if(x++==1 || ++y==1) //设a=x++,a=1,x=2. 双||意思是如果左边成立,则不计算右边,y=1. 所以if条件判断为为true。
{
x =7;
}
System.out.println("x="+x+",y="+y);//x=7,y=1
//第五题
boolean b = true;
if(b=false) //如果写成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
if(b=false) //这句话到底是加在哪里了?我实在是看不出来有哪个区别?求做过的指点一下。
//c
/*第六道
这道题的知识点:
1,switch语句先要执行case,再执行default,
2,如果第一遍case语句都没有匹配,则不考虑语句,依次执行了。
3,当遇到break,或者程序结束,就算完结了。
int x = 2,y=3;
switch(x)
{
default:
y++;
case 3:
y++;
case 4:
y++;
}
System.out.println("y="+y)//y=6
}
}
|
|