Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量。
例:
view plaincopy to clipboardprint? 1.Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。 2.cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天. 3. 4.cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天. 5. 6.//通过格式化输出日期 7.java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd"); 8. 9.System.out.println("Today is:"+format.format(Calendar.getInstance().getTime())); 10. 11.System.out.println("yesterday is:"+format.format(cal.getTime())); Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。 cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天. cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天. //通过格式化输出日期 java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd"); System.out.println("Today is:"+format.format(Calendar.getInstance().getTime())); System.out.println("yesterday is:"+format.format(cal.getTime())); 1.Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。 2.cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天. 3. 4.cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天. 5. 6.//通过格式化输出日期 7.java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd"); 8. 9.System.out.println("Today is:"+format.format(Calendar.getInstance().getTime())); 10. 11.System.out.println("yesterday is:"+format.format(cal.getTime())); Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。 cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天. cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天. //通过格式化输出日期 java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd"); System.out.println("Today is:"+format.format(Calendar.getInstance().getTime())); System.out.println("yesterday is:"+format.format(cal.getTime())); |
得到2007-12-25日期:
view plaincopy to clipboardprint?
1.Calendar calendar = new GregorianCalendar(2007, 11, 25,0,0,0); 2.Date date = calendar.getTime(); 3.System.out.println("2007 Christmas is:"+format.format(date)); 1.Calendar calendar = new GregorianCalendar(2007, 11, 25,0,0,0); 2.Date date = calendar.getTime(); 3.System.out.println("2007 Christmas is:"+format.format(date)); |
java月份是从0-11,月份设置时要减1.
GregorianCalendar构造方法参数依次为:年,月-1,日,时,分,秒.
取日期的部分:
view plaincopy to clipboardprint?
1.int year =calendar.get(Calendar.YEAR);
2.
3.int month=calendar.get(Calendar.MONTH)+1;
4.
5.int day =calendar.get(Calendar.DAY_OF_MONTH);
6.
7.int hour =calendar.get(Calendar.HOUR_OF_DAY);
8.
9.int minute =calendar.get(Calendar.MINUTE);
10.
11.int seconds =calendar.get(Calendar.SECOND);
1.int year =calendar.get(Calendar.YEAR);
2.
3.int month=calendar.get(Calendar.MONTH)+1;
4.
5.int day =calendar.get(Calendar.DAY_OF_MONTH);
6.
7.int hour =calendar.get(Calendar.HOUR_OF_DAY);
8.
9.int minute =calendar.get(Calendar.MINUTE);
10.
11.int seconds =calendar.get(Calendar.SECOND);
import java.util.Calendar;
/*测试时间2011-10-09-14:15 星期日
*
*/
public class Test
{
public static void main(String[] args)
{
System.out.println(Calendar.DAY_OF_WEEK);//7
System.out.println(Calendar.DAY_OF_MONTH);//5
//Calendar c = new Calendar();//这种不行
Calendar c = Calendar.getInstance();
int day = c.get(Calendar.DAY_OF_MONTH);
System.out.println(day);//9
c.add(Calendar.DAY_OF_MONTH,+1);取当前日期的后一天.
day = c.get(Calendar.DAY_OF_MONTH);取当前日期的后一天.
System.out.println(day);//10
}
}