一尘不染

在Joda-Time中,将DateTime设置为月初

java

我的API允许图书馆客户传递日期:

method(java.util.Date date)

从这个日期开始,我想与Joda-Time合作,提取月份并在本月包含的所有天中进行迭代。

现在,传递的日期通常是 new Date() -表示当前时刻。我的问题实际上是将新的 DateMidnight(jdkDate) 实例设置为月初。

有人可以用Joda-Time演示这个用例吗?


阅读 360

收藏
2020-12-03

共1个答案

一尘不染

本月第一天开始时的午夜为:

// first midnight in this month
DateMidnight first = new DateMidnight().withDayOfMonth(1);

// last midnight in this month
DateMidnight last = first.plusMonths(1).minusDays(1);

如果从java.util.Date开始,则使用不同的DateMidnight构造函数:

// first midnight in java.util.Date's month
DateMidnight first = new DateMidnight( date ).withDayOfMonth(1);

乔达时间Java文档- https://www.joda.org/joda-time/apidocs/overview-
summary.html

2020-12-03