我正在尝试编写一个函数,该函数涉及检查当前日期是否是该月的第一个,例如01/03/2015,然后根据具体情况运行。
它是一个日期或日历对象并不重要,我只想检查代码运行的当前日期是否是该月的第一天
答案 0 :(得分:7)
对此有一个吸气剂:
public boolean isFirstDayofMonth(Calendar calendar){
if (calendar == null) {
throw new IllegalArgumentException("Calendar cannot be null.");
}
int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);
return dayOfMonth == 1;
}
答案 1 :(得分:2)
使用LocalDate和TemporalAdjuster的Java 8解决方案
每月的第一天:
someDate.isEqual(someDate.with(firstDayOfMonth()))
每个月的最后一天:
someDate.isEqual(someDate.with(lastDayOfMonth())
此解决方案使用java.time.temporal
中的TemporalAdjusters实用程序。通常的做法是将其用作import static
,但您也可以将其用作TemporalAdjusters.lastDayOfMonth()
答案 2 :(得分:1)
SELECT col1, col2, col3, col4 FROM
(SELECT t1.*, (@t1VID := @t1VID + 1) t1VID FROM t1 , (SELECT @t1VID := 0) d) e
JOIN (SELECT t2.*, (@t2VID := @t2VID + 1) t2VID FROM t2, (SELECT @t2VID := 0) a ) b ON t1VID = t2VID
JOIN (SELECT @t1VID := 0) c ;