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

Using, and parsing Doubles in request.getParameter("price");

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

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

这是我的代码:

我目前有一个 ClassCast 异常,表明无法将字符串转换为 Int/Double。

如何解决此错误?

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

您需要确定处理 quantity 参数中可能的 null 值的业务逻辑。一个明智的解决方案可能是假设 quantity 的缺失值或 null 值表示数量为零:

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