首页 > 解决方案 > 可以将 Java Scanner 的输入分配给 while 循环条件内的变量吗?

问题描述

例如,像这样。

while ((input = kb.nextInt()) != 0) {
            if (input % 2 == 0) {
                System.out.println("even");
            } else {
                System.out.println("odd");
            }

而不是只检查条件内的输入变量的值并从循环内的 Scanner 获取数字,如下所示:

while (input != 0) {
            input = kb.nextInt();
...code here...

只是想知道第一个是否是不好的做法或类似的东西。

标签: javawhile-loopjava.util.scanner

解决方案


第二个没有定义用于测试条件的输入,input!=0因此第一个是正确的,但是如果您要使用第二种格式,我建议将循环更改whiledo-while循环。


推荐阅读