用扫描仪循环

问题描述 投票:0回答:4

我正在尝试编写代码,要求我插入我的年龄。如果它低于 10,我希望它再问我 3 次。如果超过 10,它会说“欢迎”。我没能做到这一点。

package newProject;
import java.util.Scanner;
    public class mainclass {
        public static void main(String[] args) {

            System.out.println("Enter your age");
            Scanner age= new Scanner(System.in);

            int userage= age.nextInt();
            if(userage<10){
                for(int x = 3;x<3;x++){
                    System.out.println(userage+ "is too young");
                    System.out.println("Enter your age");
                    int userage1= age.nextInt();
                }
            }else{
                System.out.println("welcome");
            }
       }
  }
java loops input java.util.scanner
4个回答
2
投票

无论你的程序的意义如何,你的错误都在于你在 x 变量中设置的值。您必须将 x 的值设置为 0,以便迭代 3 次。

    System.out.println("Enter your age");
    Scanner age= new Scanner(System.in);

    int userage= age.nextInt();
    if(userage<10) {
    // You have to set x to 0 not 3
    for(int x = 0;x<3;x++){
        System.out.println(userage + "is too young");
        System.out.println("Enter your age");
        int userage1= age.nextInt();}
    }
    else{
        System.out.println("welcome");
    }

0
投票

问题来了:

for(int x = 3;x<3;x++)

您已将

for
循环设置为只要
x
小于 3 就运行,但您已声明
x
等于 3。因此,条件
x<3
永远不会满足,因此循环永远不会运行。这是你应该做的:

for (int x=0; x<3; x++)

顺便说一句,请使用正确的缩进来格式化您的代码。如果没有缩进,阅读起来相当困难。


0
投票
package newProject;
import java.util.Scanner;
public class mainclass {
    public static void main(String[] args) {
        System.out.println("Enter your age");
        Scanner age= new Scanner(System.in);

        int userage= age.nextInt();
        if(userage<10){
            for(int i = 0;i<3;i++){
                System.out.println(userage+ "is too young");
                System.out.println("Enter your age");
                int userage1= age.nextInt();
            }
        }

       else{
            System.out.println("welcome");
       }
   }
}

0
投票

如果你想强制用户输入3次,请在nextInt()下面添加这一行: 年龄.nextLine();

© www.soinside.com 2019 - 2024. All rights reserved.