Java 循环计数器时编码?

Java 循环计数器时编码?,java,Java,所以我试图计算出这个关于计算While循环以及它们何时退出的问题:“你的朋友午餐时很无聊,为了好玩而爬楼梯。他走上两个楼梯,走下一个,走上两个楼梯,走下一个,等等。While循环需要多少次迭代才能走到第十个楼梯?”(来自CODEHS) 我已经在脑海中尝试过这个代码,但我一直被困在9。显然答案是10?这没有任何意义,因为在while循环的第9次迭代中,你将2添加到9(stairsweed),9+2=11,你不能再使用if语句了,只能停留在11,因此,退出while循环 int stairsWalk

所以我试图计算出这个关于计算While循环以及它们何时退出的问题:“你的朋友午餐时很无聊,为了好玩而爬楼梯。他走上两个楼梯,走下一个,走上两个楼梯,走下一个,等等。While循环需要多少次迭代才能走到第十个楼梯?”(来自CODEHS)

我已经在脑海中尝试过这个代码,但我一直被困在9。显然答案是10?这没有任何意义,因为在while循环的第9次迭代中,你将2添加到9(stairsweed),9+2=11,你不能再使用if语句了,只能停留在11,因此,退出while循环

int stairsWalked = 0;
while (stairsWalked < 10)
{
    stairsWalked += 2;
    if (stairsWalked < 10)
    {
        stairsWalked -= 1;
    }
}
int stairsweed=0;
而(楼梯间<10)
{
楼梯间+=2;
如果(楼梯间<10)
{
楼梯间-=1;
}
}
这个问题困扰了我很长一段时间,所以我决定将代码放在eclipse中,通过计算while循环的迭代次数,我仍然得到了9。(我将这个类命名为Jinji,因为我很无聊lol)

公共类金鸡{
公共静态void main(字符串参数[]){
int stairsweed=0;
整数计数=0;
而(楼梯间<10)
{
楼梯间+=2;
如果(楼梯间<10)
{
楼梯间-=1;
}
计数++;
}
系统输出打印(计数);
}
}
如果有人能帮助我从概念上理解为什么它是10,那将是非常有帮助的!谢谢 现在是9点

我以为有10个楼梯:
while(stairsweed)我以为有10个楼梯:
while(stairsweed
public class Jinji {
    public static void main(String args[]) {
        int stairsWalked = 0;
        int count = 0;
        while (stairsWalked < 10)
        {
            stairsWalked += 2;
            if (stairsWalked < 10)
            {
                stairsWalked -= 1;

            }
            count++;
        }
        System.out.print(count);
    }
}
0 -> 2 -> 1
1 -> 3 -> 2
2 -> 4 -> 3
3 -> 5 -> 4
4 -> 6 -> 5
5 -> 7 -> 6
6 -> 8 -> 7
7 -> 9 -> 8
8 -> 10 - exit