一、通过分析日期函数,根据日期进行一系列操作,例如:我们需要知道2个时间段中所有的日期等等。
由于Calendar 类是一个抽象类,因此我们不能通过new来获取该对象的实例.我们可以通过其类方法 getInstance,以获得此类型的一个通用的对象。
//获取当前年、月、日
Calendar cal = Calendar.getInstance(); int curr_month=cal.get(Calendar.MONTH)+1; int curr_year=cal.get(Calendar.YEAR); int curr_day=cal.get(Calendar.DAY_OF_MONTH);
二、设定自己的基准日期:
这个时候我们可以使用set方法进行.可以设定具体的年月日:用法如下:
Calendar cal = Calendar.getInstance(); int year=2013; int month=11; int day=25; cal.set(year, month, day); System.out.println(cal.get(cal.YEAR)); System.out.println(cal.get(cal.MONTH)); System.out.println(cal.get(cal.DATE));
三、Calendar.add() 加上或减去的时间(amount)指定金额给定日历字段(field)
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); //上个月月初 Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.MONTH, -1); calendar.set(Calendar.DAY_OF_MONTH, 1); int beginDate = Integer.parseInt(sdf.format(calendar.getTime())); //上个月月底 Calendar calendar2 = Calendar.getInstance(); calendar2.set(Calendar.DAY_OF_MONTH, 1); calendar2.add(Calendar.DATE, -1); int endDate = Integer.parseInt(sdf.format(calendar2.getTime())
//统计上个月所有日期
String keys[] =new String[endDate-beginDate+1];
int j = 0;
for(int i = beginDate ;i<=endDate;i++){
String key = i;
keys[j] = key;
j++;
}