【问题标题】:Java Add 3 days to a date [duplicate]Java将日期加3天[重复]
【发布时间】:2017-05-20 12:13:26
【问题描述】:

您好,我想在当天增加 3 天。我见过一些方法,但他们使用不同的格式。我有这个:

DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd");
LocalDate localDate = LocalDate.now();
String date =DateTimeFormatter.ofPattern("yyyy/MM/dd").format(localDate);

我怎样才能增加 3 天呢?

PD:考虑到我将使用这些日期从数据库中进行选择

【问题讨论】:

  • 您在询问之前是否进行了任何研究?搜索?检查documentation of LocalDate?有时,您可以通过这种方式找到答案,而不是等待别人在这里输入答案。
  • 发帖前搜索 Stack Overflow。始终假设有关常见主题的基本问题已被提出并得到解答。

标签: java date


【解决方案1】:

怎么样

localDate = localDate.plusDays(3);

【讨论】:

  • 当使用这个我得到这个错误:如果您使用算术加运算符将表示时间单位的整数直接添加到日期时间值但未指定日期单位,则可能会发生此异常。在这种特定情况下,您必须使用例如 + 1 DAY.
  • 这听起来像是一个无关的错误 - 一个与数据库有关 - 一个与新问题有关....
  • @19mike95 我认为您误解了如何应用此答案。将这行代码放在上面引用的第二行和第三行之间。也就是说,这完全是一个 Java 计算。不要试图把它变成 SQL。
【解决方案2】:

看看 LocalDate 类的plusDays(long daysToAdd)方法。这应该可以帮助您实现您想做的事情。

【讨论】:

  • 由于我无法对@Reimeus 的帖子发表评论,我必须以这种方式回复@19mike95。您是否也尝试过以下方式? LocalDate localDate = LocalDate.now().plusDays(3); ?可能值得一试...否则就像@Reimeus 所说的那样,异常与数据库有关。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-12-20
  • 1970-01-01
  • 2022-12-05
  • 2011-07-05
  • 1970-01-01
  • 2012-08-18
  • 2012-10-25
相关资源
最近更新 更多