通过Date类我们可以创建并格式化一个日期对象,但是如何才能设置和获取日期数据的特定部分呢?----Calendar类
Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,通过getInstance方法创建对象即可。
1、创建一个代表系统当前日期的Calendar对象。
Calendar c = Calendar.getInstance(); //默认是当前日期。
2、创建一个指定日期的Calendar对象。
首先创建一个Calendar对象,然后再设定该对象中的年月日参数来完成。
Calendar cl = Calendar.getInstance();
cl.set(2009,6 - 1,12);//代表2009年6月12日
GregorianCalendar类
Calendar类实现了公历日历,GregorianCalendar是Calendar类的一个具体实现。
Calendar 的getInstance()方法返回一个默认用当前的语言环境和时区初始化的GregorianCalendar对象。GregorianCalendar定义了两个字段:AD和BC。这是代表公历定义的两个时代
packagecuiyuee;import java.util.*;public classGregorianCalendarDemo {public static voidmain(String[] args) {//TODO Auto-generated method stub
String months[] ={"Jan", "Feb", "Mar", "Apr","May", "Jun", "Jul", "Aug","Sep", "Oct", "Nov", "Dec"};intyear;//初始化Gregorian日历//使用当前时间和日期//默认为本地时间和时区
GregorianCalendar gcalendar = newGregorianCalendar();
System.out.println("Date:");//显示当前时间和日期的信息
System.out.print(months[gcalendar.get(Calendar.MONTH)]);
System.out.print(" "+gcalendar.get(Calendar.DATE)+" ");
System.out.println(year=gcalendar.get(Calendar.YEAR));
System.out.print("Time:");
System.out.print(gcalendar.get(Calendar.HOUR)+":");
System.out.print(gcalendar.get(Calendar.MINUTE)+":");
System.out.println(gcalendar.get(Calendar.SECOND));//测试当前年份是否为闰年
if(gcalendar.isLeapYear(year)){
System.out.println("当前年份是闰年");
}else{
System.out.println("当前年份不是闰年");
}
}
}