Groovy询问上一个工作日(例如星期一)的惯用方法是什么?(或本周,一周的第一天)?
此外,询问当前月份,即本月的第一个月是否也有类似的内容?
static Date firstDayInWeek(Date day) {
day.clearTime()
return day - day.calendarDate.dayOfWeek
}
一年前,我写了一个简单的DSL来计算日期,这允许你做:
def mondayInJuly = new DateDSL().with {
first.monday.in.july( 2011 )
}
将CCD_ 1设置为表示的Date对象
Mon Jul 04 00:00:00 UTC 2011
我需要更新脚本以允许您使用Groovy1.8的更宽松的解析器
当你在标签中提到DateTime
时,我建议JodaTime可以。所以,我们这样做:
def lastMonday =
new DateTime().withDayOfWeek(DateTimeConstants.MONDAY).minusWeeks(1)
def firstThisMoth = new DateTime().withDayOfMonth(1)