前言
最近在项目中对时间处理比较细致,下面就跟大家介绍一下
具体实现方法
public static final long ONE_DAY = 24 * 60 * 60 * 1000L;
/**
* 判断该日期是否是该月的第一天
*
* @param date 需要判断的日期
* @return
*/
public static boolean isFirstDayOfMonth(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
return calendar.get(Calendar.DAY_OF_MONTH) == 1;
}
/**
* 获取当月第一天
*
* @return
*/
public static Date getMonthFirstDay(Date date, int day) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.DAY_OF_MONTH, 1);//获取当月第一天
calendar.add(Calendar.MONTH, day);//day: 0是指本月,-1是向前推一个月,1是向后推一个月
return calendar.getTime();
}
/**
* 获取某年第一天日期
*
* @param year 年份
* @return Date
*/
public static Date getYearFirst(int year) {
Calendar calendar = Calendar.getInstance();
calendar.clear();
calendar.set(Calendar.YEAR, year);
Date currYearFirst = calendar.getTime()