获取关于输入类型的信息(主要参数)
这个问题在这里已经有了答案:
最简单的方法是使用parseInt
进行检查。
public static void main(String[] args) throws InterruptedException
{
try
{
Integer.parseInt(args[0]);
}
catch(NumberFormatException e)
{
System.out.println("It is not a number.");
}
}
args[]
接受所有提供给main方法的参数,所以args[0]
虽然是一个String,但如果您希望用户输入一个Integer,则可以将其与...一起使用。
Integer.parseInt(args[0]);
考虑一下这个事实,尽管它可能通过java.lang.NumberFormatException
所以如果用户输入了无效的输入,你必须检查。 如果你想根据这是一个真正的数字来做一些事情,看看Apache Commons Lang中的StringUtils.isNumeric,为什么要重新发明轮子?
我会这样做的原因而不是try{} catch()
是因为异常应该用于特殊情况。
你的参数的类型总是只是String
。 如果该字符串是“”,则“Foo”或“182”在这一点上完全是任意的。
这些字符串可能是或可能不是数字的有效表示。 您需要将字符串转换为您的数字类型(例如Integer.parseInt
)以获取int
。
上一篇: Getting an information about type of input ( main args )