如何避免Java中的数字格式异常?
在我日常的Web应用程序开发中,有许多情况需要我们从用户那里获取一些输入。
然后将这个数字输入传递给可能是应用程序的服务层或DAO层。
由于它是一个数字(整数或浮点数),在某个阶段,我们需要将其转换为整数,如以下代码片段所示。
String cost = request.getParameter("cost");if (cost !=null && !"".equals(cost) ){
Integer intCost = Integer.parseInt(cost);
List<Book> books = bookService . findBooksCheaperThan(intCost);
}
在上述情况下,在这里,我必须检查输入是否不为null或是否没有输入(空白),或者有时是否有非数字输入的可能性,例如blah,test等。
处理此类情况的最佳方法是什么?
回答:
只需捕获您的异常并进行适当的异常处理即可:
if (cost !=null && !"".equals(cost) ){ try {
Integer intCost = Integer.parseInt(cost);
List<Book> books = bookService . findBooksCheaperThan(intCost);
} catch (NumberFormatException e) {
System.out.println("This is not a number");
System.out.println(e.getMessage());
}
}
以上是 如何避免Java中的数字格式异常? 的全部内容, 来源链接: utcz.com/qa/402373.html