Java I';如果输入不是数字,我试图让我的程序抛出一个IllegalArgumentException

Java I';如果输入不是数字,我试图让我的程序抛出一个IllegalArgumentException,java,Java,我正在努力使它成为,如果输入不是一个数字,并且我无法理解它,我们将抛出我的异常,有人能帮我走上正确的轨道吗 您应该使用,这将允许您检查流中的下一个令牌是否可以解析为int if (! scanner.hasNextInt()) throw new IllegalArgumentException() 您正在捕获IllegalArgumentException而不是抛出它define“number”。为什么您认为try…catch块会这样做?整数或任何数字都可能重复,即浮点数?我已经有一段时间没

我正在努力使它成为,如果输入不是一个数字,并且我无法理解它,我们将抛出我的异常,有人能帮我走上正确的轨道吗

您应该使用,这将允许您检查流中的下一个令牌是否可以解析为int

if (! scanner.hasNextInt()) throw new IllegalArgumentException()

您正在捕获
IllegalArgumentException
而不是抛出它define“number”。为什么您认为
try
catch
块会这样做?整数或任何数字都可能重复,即浮点数?我已经有一段时间没有用Java编程了,但如果下一项是“.”(句点),这会起作用吗?是的,它应该检查是否有int。“.”不是整数,所以希望不会有问题。
if (! scanner.hasNextInt()) throw new IllegalArgumentException()