我必须使用doubles / int来解析一些本质上是数字的数据,但我想测试null。
我正在使用对我的servlet的request.getParameter()调用来收集数据。
这是我的代码:
我目前有一个ClassCast异常,说不能将String强制转换为Int / Double。
如何解决此错误?
int quantity = Integer.parseInt(request.getParameter("quantity") == null ? "" : Integer.parseInt(request.getParameter("quantity")));
答案 0 :(得分:2)
您需要决定处理null
参数中可能的quantity
值的业务逻辑。一个明智的解决方案可能是假设null
的缺失或quantity
值表示数量为零:
String quantityStr = request.getParameter("quantity");
int quantity = 0; // replace with whatever default value you want
// only parse for non-null, non-empty inputs
if (quantityStr != null && quantityStr.length() > 0) {
quantity = Integer.parseInt(quantityStr);
}