如何检查用户输入是否为字符串,并相应给出错误?

时间:2018-10-02 03:16:53

标签: java

    while (x == 1)
    {
          Scanner scan= new Scanner(System.in);  

          System.out.println("Enter Day of Sale (Sunday, Monday, Tuesday, 
          etc.):");  
          dayOfWeek= scan.nextLine();  

          if (scan.hasNextInt()) {  
              System.out.println("Invalid input, try again..."); }  

      else if (scan.hasNext()) {
          break;
      }

程序中的其他所有内容都可以正常工作,但我不知道为什么这不会破坏

1 个答案:

答案 0 :(得分:0)

根据您的问题,您希望使用它来输入星期几。让我们看看这对您有帮助 我有一个有效输入的列表,例如“星期天”,“星期一”等,并对照它检查用户输入。除非用户输入有效选项,否则它将一直显示错误。

        int x = 1;
        List<String> validOptions = Arrays.asList("Sunday", "Monday", "Tuesday");
        while (x == 1) {
            Scanner scan = new Scanner(System.in);

            System.out.println("Enter Day of Sale (Sunday, Monday, Tuesday,  etc.):");
            String dayOfWeek = scan.nextLine();

            if (validOptions.contains(dayOfWeek)) {
                System.out.println("valid input");
                x = 0;
            } else {
                System.out.println("invalid input");
            }
        }