如何在Java中将Long值设置为原始null

问题描述 投票:0回答:1

我正在尝试用 Java 执行数据库插入或更新。

该方法将

eventId
接收为
Long

当我运行以下命令时,我的代码本质上返回一个

NullPointerException


if (!(eventId>0)) {
   eventId = null;
}

但是,在到达数据库之前,我需要将

eventId
显式设置为
null
以获得
insert

所以基本问题是,如何将

null
设置为
Long
变量而不使其被
NullPointerException
炸毁?

java nullpointerexception
1个回答
0
投票

如果

eventId
已经是
null
eventId>0
将抛出 NPE。

修复很简单:

if (eventId != null && eventId <= 0) eventId = null;

注意:出于显而易见的原因,

!(eventId > 0)
最好写成
eventId <= 0

© www.soinside.com 2019 - 2024. All rights reserved.