【发布时间】:2013-12-25 14:36:45
【问题描述】:
我正在制作一个程序,我希望用户将值输入到变量中。输入后我想检查值类型,但我不知道如何。有点像这样:
import java.util.Scanner;
Scanner scanner = new Scanner(System.in);
int num1;
num1 = scanner.nextInt();
我想要某种方法来检查 num1 的类型,这样我就可以确保用户输入了一个可用的值,即确保他们没有输入诸如 "qwerty" 之类的字符串到整数变量中,这样我就可以继续捕获错误,而不是最终得到 java.util.InputMismatchException。我试过了:
if(num1 instanceof java.lang.String)
但它不能修复错误,也不适用于整数。
关于如何解决这个问题的任何想法?
【问题讨论】:
-
显然声明为
int的值不是String。您正在向后考虑:everything 以字符串形式出现。你正在扫描一个 int;如果你得到异常,它不是一个 int。如果你这样做,那就是检查。 -
这个post 应该会有所帮助
标签: java variables input integer