简单的JAVA程序

来源:百度知道 编辑:UC知道 时间:2024/05/14 14:32:23
class Shuffle2{
public static void main (String [] agrs){
int x = 3;
while (x > 0){

if(x > 2){
System.out.print("a");
}

x = x - 1;
System.out.print("-");

if (x == 2){
System.out.print("b c");
}
//这里X==2啊 为什么会输出D哦
if (x == 1) {
System.out.print("d");
x = x - 1;
}
}
}
}

输出结果是 a-b c-d

因为程序执行到你注释的地方,while循环完毕,此时x=2,所以程序又回到while(x>0)这个地方再次向下执行.经过
x = x - 1;
System.out.print("-");
时,x变成了1,所以执行if(x==1)里的语句.这时经过最后一行的x=x-1,x的值为0,不再符合while中(x>0)的条件,所以程序结束.

这里是个while循环
总共执行了两次
第一次执完后就输出为"a-b c",这时x=2;

进入第二次循环:
if(x > 2){
System.out.print("a");
}

x = x - 1;
//执行到这时,x=1

if (x == 1) {
System.out.print("d");
x = x - 1;
}
这里就输出"d"
x=0,不满足条件x>0,就退出while了