有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java验证只检查一次

case 1:
                System.out.println("Please create a Book ID: ");
                String newID = sc.next();
                for (int i = 0; i < myBooks.size(); i++) {
                    if (myBooks.get(i).getBookID().contains(newID)) {
                        System.out.println("This BookID already exists. Please enter a different bookID");
                        sc.next();
                    }
                }

//这是我在程序中使用的开关的一小部分代码。我正在尝试实现验证,似乎遇到了一些问题。我试图允许用户向arrayList添加一本新书,如果输入已经存在,我的程序将生成一个验证检查。代码可以工作,但只有一次。我知道这可能是我需要的一个循环,但我仍在学习如何使用它们


共 (1) 个答案

  1. # 1 楼答案

    你在混合责任。for循环尝试检测已经存在的图书id,如果验证失败,则向用户请求一个新id

    您需要两个循环:

    • 一个外部循环,向用户请求一个新的id,如果输入了有效的id则终止
    • 用于检查输入id有效性的内部循环