在request.getParameter中使用和解析双打(" price");

时间:2016-10-02 04:06:59

标签: java classcastexception

我必须使用doubles / int来解析一些本质上是数字的数据,但我想测试null。

我正在使用对我的servlet的request.getParameter()调用来收集数据。

这是我的代码:

我目前有一个ClassCast异常,说不能将String强制转换为Int / Double。

如何解决此错误?

int quantity = Integer.parseInt(request.getParameter("quantity") == null ? "" : Integer.parseInt(request.getParameter("quantity")));

1 个答案:

答案 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);
}