Java 8 将日期输出为 YYYY-MM-DD

标签 java date getter

我在 Java 8 中有一个 getter,我将其设置为以下内容,问题是输出为 Sat Jan 11 00:00:00 AEDT 2020

该类必须保留为 DateStartDateLocalDate

public static Date getStartDate() {
    return Date.from(StartDate.atStartOfDay()
                      .atZone(ZoneId.systemDefault())
                      .toInstant());
}

我需要它以 YYYY-MM-DD 的形式返回值,但我正在努力解决这个问题。

是的,这是一项作业。不知道我们被告知将一个设置为 Date 并将另一个设置为 LocalDate 的逻辑,除了惹恼我......

感谢任何帮助。

最佳答案

请尝试此解决方案。

public static String getStartDate() {
    DateTimeFormatter oldPattern = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSz");
    DateTimeFormatter newPattern = DateTimeFormatter.ofPattern("yyyy-MM-dd");
    LocalDateTime datetime = LocalDateTime.parse(new Date().toInstant().toString(), oldPattern);
    return datetime.format(newPattern);
}

关于Java 8 将日期输出为 YYYY-MM-DD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59692133/

相关文章:

c++ - 总是返回成员变量 getter 的引用是个好主意吗?

java - 继承 getter 和 toString() - java

java - 错误: Type mismatch: cannot convert from ArrayList<Subchild> to ArrayList<String>

java - Java图形编程绘制图像错误

javascript - 在 Node.js 中向 javascript 日期添加分钟

php - php 中的天数差异

java - 获取两个相同日期时间的长值会产生不同的值

java - Horizo​​ntalListView 缩放内容(项目布局)

java - 自定义验证

c# 修改 getter/setter 但保留简短形式