java - 用 try catch 做 while JAVA 验证

标签 java

当我输入字母和其他类型时调用此方法时,当它停止时,我无法弄清楚如何解决此问题。我的代码有什么问题?有人可以帮忙吗?提前致谢!

这是我的代码:

public int selectOption(int maxRange, String sourceType) throws IOException
{
    do
    {
        try
        {
            userInput = input.nextInt();

        }//end try
        catch(Exception e)
        {
            validInput=false;               
            input.next();

        }//end catch

        if (userInput<1 || userInput>maxRange)
        {
            MovieHouse.clearScreen();
            System.out.println("Select from the options only!");
            loadHeader();

            if(sourceType.equals("main"))
                MovieHouse.homeMenu();
            else if(sourceType.equals("movie menu"))
                loadMovieMenu();

        }//end if

    }while(userInput<1 || userInput>maxRange || validInput==false);

    return userInput;

}//end selectOption

最佳答案

“输入字母” - 这是否意味着程序通常采用数字并且您提供字符作为输入。

不清楚您的问题是什么。

关于java - 用 try catch 做 while JAVA 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20399794/

相关文章:

java - 如何对 AJAX 应用程序进行黑盒测试?

Java 控制台应用程序已锁定

java - Worklight、Java SQL 适配器、适配器部署失败

java - java线程和系统线程有什么关系

java - 如果我有一个已经存在的按钮样式,我该如何实现自定义 java 合成器按钮样式?

java - 用于输出和工作的 SwingWorker,还是各 1 个?

java - TableCellRenderer 为许多单元格设置颜色,而不仅仅是一个

java - 在 Java 中的 OSM map 上将 point1 移动到 point2 的方向

java - 如何最好地将我的应用程序与不可靠的数据库隔离开来?

java - 对于不能全部放入内存的大多数排序数据的良好排序算法?