![](/img/trans.png)
[英]java.lang.NullPointerException - Can't find the null variable
[英]java.lang.NullPointerException: null while assigning current date to variable
在我的ISData
class 中,我创建了以下方法:
public static final DateFormat IN_DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd");
现在在我的TSTIMP
class 中,我试图将IN_DATE_FORMAT
格式的当前 sys 日期值分配给变量import_date
,这是 Date 数据类型。 但不知道该怎么做。 我想将这个日期解析为字符串,因为我需要稍后将其存储在数据库表中。 目前我收到错误java.lang.NullPointerException: null
data.import_date = InstrumentMasterData.IN_DATE_FORMAT.parse(<need to provide sysdate> as String)
下面我尝试了变量effective_date
这也是Date
数据类型并且它工作正常:
data.effective_date = allocDate != null ? InstrumentMasterData.IN_DATE_FORMAT.parse(allocDate as String) : null
我还有data.fund_quote_date
变量,它也是日期数据类型,它应该始终为 null。我如何为这个变量分配 null 值?
我正在尝试将 IN_DATE_FORMAT 格式的当前系统日期值分配给变量 import_date,这是日期数据类型。 但不知道该怎么做。
您可以使用DateFormat#format
以IN_DATE_FORMAT
格式获取系统日期字符串,例如
data.import_date = InstrumentMasterData.IN_DATE_FORMAT.parse(InstrumentMasterData.IN_DATE_FORMAT.format(new Date()) as String)
但是,这是不必要地使用IN_DATE_FORMAT
格式化Date
object,然后将相同格式的字符串解析回Date
object。除此之外,您可以简单地执行以下操作:
data.import_date = new Date();
我还有
data.fund_quote_date
变量,它也是日期数据类型,它应该始终为 null。我如何为这个变量分配 null 值?
简单地,将null
分配给它:
data.fund_quote_date = null;
注意:如果可能,请停止使用过时且容易出错的java.util
date-time API 和SimpleDateFormat
。 切换到现代java.time
日期时间 API 和相应的格式 API ( java.time.format
)。 从Trail:Date Time中了解有关现代日期时间 API 的更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.