java - 我将如何进行输入验证?

标签 java

告诉用户输入的数字是偶数还是偶数。我需要输入验证方面的帮助。我需要做的验证是用户不能输入除数字之外的任何内容。尝试在不使用 try 和 catch 方法的情况下进行验证。

import java.util.Scanner;
  public class oddoreven {
      public static void main (String [] args) {
         Scanner input = new Scanner (System.in);

         //declaractions
         int num; 

         //while loop
         do{ 
         System.out.println("PLease enter a number to see whether it is even or odd. To end tyype in -99.");
         num = input.nextInt();  

         // input valid


        }while(num != -99);  // loop ends

 // begins the method
      public static void is_odd_or_even_number(int number){   
         int rem = number%2;


      \

最佳答案

您可以调用 Scanner.hasNextInt() 来确定下一个输入是否为 int(并使用其他任何内容)。此外,当输入为 -99(或 99,您的代码测试 99 但你的提示是 -99)。最后,您应该调用您的方法。比如,

public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    int num;
    do {
        System.out.println("Please enter a number to see whether it is "
                + "even or odd. To end type in -99.");
        if (input.hasNextInt()) {
            num = input.nextInt();
            if (num != -99) { // <-- directions say -99.
                is_odd_or_even_number(num);
            } else {
                break;
            }
        } else {
            System.out.printf("%s is not a valid int.%n", input.nextLine());
        }
    } while (true);
}

关于java - 我将如何进行输入验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42047127/

相关文章:

c# - C# 中的 >> Java 运算符相当于什么

java - org.openqa.selenium.ElementClickInterceptedException : element click intercepted error using Selenium and Java in headless mode

java - 如何在没有网络的情况下创建嵌入进程内/内存中的 Hazelcast 实例?

java - 将具有 main 方法的 Java 程序转换为 servlet

java - 间隔后在 Swing JComponent 中重新绘制

java - 为什么Spring中的RequestMapping得到空值

java - 打印具有正确格式的二叉搜索树

java - 从 Java 调用 C++ 函数。映射 "const char*"

java - 后台 worker 的Spring Boot应用程序

java - 如何添加Java项目作为Maven Web项目的依赖项目?