这次做一个系统,用到了根据日期查询,设置了一个默认的起始时间和一个默认的结束时间。起始时间设置的是当前月的第一天,结束时间是当前月的最后一天。
补充一点:
考虑到这样只能得到当前月的第一天和最后一天,不是很灵活。我由设计了两个方法,可以输入年份和月份,得到你想要的那月的第一天和最后一天。
Calendar cal = Calendar.getInstance();
//当前月的1号
int minDayNum = cal.getActualMinimum(Calendar.DATE);
//当前月最大的天数
int maxDayNum = cal.getActualMaximum(Calendar.DATE);
cal.set(Calendar.DATE, minDayNum);
//当前月的1号
Date minDay = cal.getTime();
System.err.println(DateFormat.getDateInstance().format(minDay));
cal.set(Calendar.DATE, maxDayNum);
//当前月的最大的那一天
Date maxDay = cal.getTime();
System.err.println(DateFormat.getDateInstance().format(maxDay));
补充一点:
考虑到这样只能得到当前月的第一天和最后一天,不是很灵活。我由设计了两个方法,可以输入年份和月份,得到你想要的那月的第一天和最后一天。
/**
*
* @param year 年份
* @param month 月份
* @return 这个月的1号
*/
private static Date getFirstMonthDay(int year,int month) {
Calendar cal = Calendar.getInstance();
//1号。这里要注意:month要减去1
cal.set(year, month-1, 1);
return cal.getTime();
}
/**
*
* @param year 年份
* @param month 月份
* @return 这个月的最后一天
*/
private static Date getLastMonthDay(int year,int month) {
Calendar cal = Calendar.getInstance();
cal.set(year, month-1, 1);
//该月的最大的天数
int maxDayNo = cal.getActualMaximum(Calendar.DATE);
cal.set(Calendar.DATE, maxDayNo);
return cal.getTime();
}