求大神解释一下这个程序的运作结果
求大神解释一下这个程序的运行结果
public class Shuffle1 {
public static void main(String[] args){
int x=3;
while(x>0){
if(x>2){
System.out.print("a");
}
System.out.print("-");
x--;
if(x==2){
System.out.print("b c");
}
if(x==1){
System.out.print("d");
x--;
}
}
}
}
为什么是a-b c-d 而不是a--b c-d
------解决方案--------------------
public class Shuffle1 {
public static void main(String[] args){
int x=3;
while(x>0){
if(x>2){
System.out.print("a");
}
System.out.print("-");
x--;
if(x==2){
System.out.print("b c");
}
if(x==1){
System.out.print("d");
x--;
}
}
}
}
为什么是a-b c-d 而不是a--b c-d
------解决方案--------------------
public static void main(String[] args){
int x=3;
while(x>0){ //第五步 x=2 true,继续循环 //第十步 x=0 false,循环结束
if(x>2){ //第一步 x=3>2
System.out.print("a"); // 打印"a"
}
System.out.print("-"); //第二步 打印 "-" //第六步 打印"-"
x--; //第三步 x=2 //第七步 x=1
if(x==2){
System.out.print("b c"); //第四步 打印 "b c"
}
if(x==1){ // x=1 true
System.out.print("d"); //第八步 打印d
x--; //第九步 x=0
} //循环体执行完第一遍,x=2,跳回前面再次循环 //执行完第二遍,跳回前面
}
} //结果就是a-b c-d了