嵌套 while 循环以及如何在第一次运行后访问内部循环

雷兹万

所以我试图制作一个带有子菜单的菜单。所以我的第一个想法是嵌套的 while 循环。所以我做了一个小程序来尝试我的想法,我显然错了?

当我运行此代码时

    public static void main(String[] args){
        int i = 1;
        int j = 1;

        while(i != 2){
            i = Kbd.readInt("1 to go to inner 2 to exit");

            while(j != 2){
                j = Kbd.readInt("1 to continue 2 to exit to outer");
            }

        }
    }
}

我可以“访问”子菜单并无限次运行直到我退出(如果我按 2)但是在我从内部 while 循环开始后,我似乎无法再次访问内部循环?

我想知道我是否在想错或关于我应该如何做的任何建议。

(Kbd 类是我们班的扫描仪)

CB

当然,您不能重新进入内部循环,因为离开循环时 j 始终为 2,并且永远不会在外部更改。

考虑在循环中本地保持 j 。

while (i != 2)
{
    int j = 1 ;
    while (j != 2)
        ...
}

修复此错误后,您将发现下一个错误。如果在第一个 getInt() 中按 2 会发生什么?不管i的值是多少,你真的要进入内循环吗?用户提示建议不同的东西。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章