gpt4 book ai didi

java - 将公历转换为字符串但抛出异常

转载 作者:行者123 更新时间:2023-12-01 12:16:05 24 4
gpt4 key购买 nike

运行程序并尝试显示购买日期后,程序抛出异常以下是购买日期的 getter 和 setter 代码:

public void setPurchaseDate(String purchaseDate){
String[] dateSplit = purchaseDate.split("/");
int month, day, year;
month = Integer.parseInt(dateSplit[0]);
day = Integer.parseInt(dateSplit[1]);
year = Integer.parseInt(dateSplit[2]);
GregorianCalendar date = new GregorianCalendar (year, month-1, day);
}

public String getPurchaseDate(){
String date;
SimpleDateFormat sdf = new SimpleDateFormat("MM/DD/YYYY");
date = sdf.format(this.purchaseDate.getTime());
return date;
}

这是控制台的异常:

Exception in thread "main" java.lang.NullPointerException
at jasonsiboleproject5.motorVehicle.getPurchaseDate(motorVehicle.java:88)
at jasonsiboleproject5.car.toString(car.java:69)
at java.lang.String.valueOf(String.java:2847)
at java.lang.StringBuilder.append(StringBuilder.java:128)
at java.util.AbstractCollection.toString(AbstractCollection.java:458)
at java.lang.String.valueOf(String.java:2847)
at java.io.PrintStream.println(PrintStream.java:821)
at jasonsiboleproject5.mainclass.main(mainclass.java:83)

Java 结果:1

最佳答案

1.) 首先检查您传递的格式,它是否有效“MM/DD/YYYY”或使用此“MM/dd/yyyy”

2.) 同样在您的函数setPurchaseDate中,您未设置日期,并且在getter中我们调用this .purchaseDate.getTime(),其中 this.purchaseDate 将为 null。因此,首先正确设置该值并添加空检查。

关于java - 将公历转换为字符串但抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27007749/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com