我的网络服务应该接收长整型数。
long ipInt = (long) obj.get("ipInt");
当我测试我的程序并将ipInt值设为2886872928时,它显示成功。
然而,当我测试我的程序并将ipInt值设为167844168时,它显示错误:java.lang.ClassCastException: java.lang.Integer无法转换为java.lang.Long
该错误指向上述代码。
FYI,我的数据以JSON格式存储:
{
"uuID": "user001",
"ipInt": 16744168,
"latiTude": 0,
"longiTude": 0,
}
有什么建议可以确保我的代码能够接收ipInteger值吗?
obj
是什么类型?它是如何创建和填充的? - JB NizetLong.parseLong(int)
而不是强制转换int
值。 - Sherwin Obcianaobj.get("ipInt")
显然返回Integer
,我无法看出这将如何工作。 - Jon Skeetlong
,这将完全解决您的问题。这里是 jackson 的解决方案(如果您正在使用它)。 - ernest_k