Java 如何修复整型值而不是引发异常?
我需要使用floor函数修复用户输入的值,而不是让它抛出异常并停止。可能吗? 如果用户输入8.3;它应该变成8,并且不会抛出异常。你知道怎么做吗 我编写的部分代码如下所示:Java 如何修复整型值而不是引发异常?,java,exception,int,floor,Java,Exception,Int,Floor,我需要使用floor函数修复用户输入的值,而不是让它抛出异常并停止。可能吗? 如果用户输入8.3;它应该变成8,并且不会抛出异常。你知道怎么做吗 我编写的部分代码如下所示: try{ int y=0; Scanner inputY = new Scanner(System.in); System.out.println("Enter an Integer between 1-9"); y = inputY.nextInt(); catch(InputMis
try{
int y=0;
Scanner inputY = new Scanner(System.in);
System.out.println("Enter an Integer between 1-9");
y = inputY.nextInt();
catch(InputMismatchException e){
return 0;
}
finally{
System.out.println("The input number was not an integer between 1-9");
System.exit(0);
}
不要使用nextInt()
而是使用nextDouble()
并从double转换为int
double y = inputY.nextDouble();
int x = (int) y;
Scanner
提供了一系列hasXyz
方法,用于测试读取nextXyz
是否将引发异常。您可以使用此方法确定扫描仪查看的是int
还是double
,然后读取可用的数据。