整数数据验证中的无限循环

时间:2014-11-16 14:30:05

标签: java validation

    boolean validator = true;
    int userMembers = 0;

    while(userMembers > 8 || userMembers < 1)
    {

        while(validator)
        {
            try
            {   
                System.out.println("How many members of the band? ");
                userMembers = input.nextInt();
                validator = false;
            }
            catch(InputMismatchException e)
            {
                System.out.println("Please user proper syntax");


            }
        }   

        validator = true;
    }

这是我过去几个小时一直遇到的问题。无论我做什么,我都无法强制while循环实际问userMembers = input.nextInt();两次或更多次。它只是在无限循环中运行。如果我在整数之外输入任何内容,就会发有人可以解释为什么这不起作用或只是给我一个不太复杂的解决方案?

1 个答案:

答案 0 :(得分:2)

input.nextLine ();添加到catch块,以使用当前输入行的其余部分。