我正在尝试了解 Date 对象和 DateFormat 类,但我在尝试执行的示例中不断收到错误。目标是通过在假装发票日期上添加 30 天来获得到期日,然后设置该到期日的格式。我相信 dueDate 方法是正确的,但我在正确格式化它时遇到问题。
这是我的第一件事,它采用发票日期并添加 30 天。
public Date getDueDate()
{
Calendar cal = new GregorianCalendar();
cal.setTime(getInvoiceDate());
cal.add(Calendar.DATE, 30);
Date dueDate = cal.getTime();
return dueDate;
}
下一部分是我遇到麻烦的地方,因为它不断告诉我它需要一个 Date 对象,但正在接收一个 String ,我不确定为什么,因为我提供了一个 Date 对象。
public Date getFormattedDueDate()
{
Date dueDate = getDueDate();
DateFormat shortDate = DateFormat.getDateInstance(DateFormat.SHORT);
return shortDate.format(dueDate);
}
谁能帮我弄清楚为什么它告诉我,当我提供的变量(dueDate)被编码为日期对象时,它是一个字符串?
最佳答案
format(Date date)
将Date
格式化为日期/时间String
。
关于java - 在 Java 中使用 DateFormat 格式化 Date 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20273139/