Java 嵌套While循环逻辑错误

Java 嵌套While循环逻辑错误,java,while-loop,nested-loops,Java,While Loop,Nested Loops,我是Java新手,我试图理解嵌套while循环。我正在尝试编写一个程序,该程序将打印以下输出: 999999999 on the top line, 88888888 on the next, 7777777 etc, 666666 etc, 55555 4444 333 22 1 我可以很容易地使用for循环来实现这一点,但是现在我想用While循环来实现同样的功能。问题是,我的代码在当前状态下只打印第一行9,然后看起来内部While循环之后就不再运行了 我非常困惑,我不认为我的标准是重言式

我是Java新手,我试图理解嵌套while循环。我正在尝试编写一个程序,该程序将打印以下输出:

999999999 on the top line,
88888888 on the next,
7777777 etc,
666666 etc,
55555
4444
333
22
1
我可以很容易地使用for循环来实现这一点,但是现在我想用While循环来实现同样的功能。问题是,我的代码在当前状态下只打印第一行9,然后看起来内部While循环之后就不再运行了

我非常困惑,我不认为我的标准是重言式,但我不太理解重言式。请解释一下我的循环逻辑有什么问题。循环对我来说仍然是很多神秘的巫毒

int outer = 9;
int inner = 1;

while (outer >= 1)
    {   
        while(inner <= outer)
            {
                System.out.print(outer);
                inner++;
            }
        System.out.println();
        outer--;
    }
int-outer=9;
int-inner=1;
while(外部>=1)
{   

while(internal在第二次while循环后,必须重置
internal
的值

while (outer >= 1){   
        while(inner <= outer){
                System.out.print(outer);
                inner++;
        }
        inner = 1;
        System.out.println();
        outer--;
 }
而(外部>=1){

而(内部您需要每次重置
internal

while (outer >= 1) {   
    inner = 1; // ADD THIS LINE
    while(inner <= outer)
        {
            System.out.print(outer);
            inner++;
        }
    System.out.println();
    outer--;
}
而(外部>=1){
inner=1;//添加此行

当我发布lol时,我才意识到这一点。谢谢你的帮助!我感觉自己像个新手。@user2993456我通常觉得它很有帮助(当我学习时)通过在循环的每个状态下写下变量的值,在一张纸上干运行代码。谢谢你的建议。这次我走在了前面,但我以后一定会尝试你的方法!