Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果输入不是java中的数字,如何检查和显示错误消息_Java - Fatal编程技术网

如果输入不是java中的数字,如何检查和显示错误消息

如果输入不是java中的数字,如何检查和显示错误消息,java,Java,如何使用try-and-catch语句验证变量odd中的输入是一个数字还是打印错误消息?我是java编程新手。谢谢你的帮助 import java.util.Scanner; public class ScenarioB{ public static void main (String[]args){ int odd; Scanner scan = new Scanner(System.in); System.out.print("Ent

如何使用try-and-catch语句验证变量odd中的输入是一个数字还是打印错误消息?我是java编程新手。谢谢你的帮助

import java.util.Scanner;

public class ScenarioB{
    public static void main (String[]args){
        int odd;
        Scanner scan = new Scanner(System.in);
        System.out.print("Enter An Odd Number\n");
        odd = scan.nextInt();
    }
}

Scanner类有一个用于此的方法

Scanner in = new Scanner(System.in);
int num;
if(in.hasNextInt()){
  num = in.nextInt();
  System.out.println("Valid number");
}else{
  System.out.println("Not a valid number");
}
产出1:

八,

有效号码

产出2:

a

不是一个有效的数字


您的代码如下所示:

try {
            int scannedNumber;
            Scanner scan = new Scanner(System.in);
            System.out.print("Enter An Odd Number\n");
            String userInput = scan.nextLine();

            System.out.println("You pressed :" + userInput);

            scannedNumber = Integer.parseInt(userInput);

            if (scannedNumber % 2 == 0) {
                throw new Exception("Not an odd number");
            }

            System.out.println("You pressed odd number");

        } catch (Exception e) {
            System.out.println("" + e.getMessage());
        }
在这里输入字符串后。然后强制转换为整数。如果强制转换失败,它将抛出
NumberFormatException
。如果它是一个数字,那么检查它是奇数吗?如果不是奇数,那么它也会抛出一个异常

希望这对你有帮助


谢谢:)

或的可能重复:[如何在Java中检查输入是否为整数?[duplicate]]()