在这段代码中我很困惑为什么打印出“0 1 2 3”而不是“3 2 1 0”
int y = 3;
String s = " ";
while (y>-1)
{
s = y + " " + s;
y--;
}
System.out.print(s);
感谢。
答案 0 :(得分:6)
s = y + " " + s;
在字符串的前面添加y,所以:
s = 3
s = 2 3
s = 1 2 3
s = 0 1 2 3
答案 1 :(得分:0)
step 1:
s = 3
step 2:
s = 2 3;
step 3:
s = 1 2 3
在每个循环中都是明智的,y的值被添加到字符串s的起始点
答案 2 :(得分:0)
这是因为您在字符串前面添加了最新值。如果您希望输出为“3 2 1 0”,则应从
更改行s = y + " " + s;
到
s = s + " " + y;