Java的Calendar类

通过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。这是代表公历定义的两个时代

package cuiyuee;
import java.util.*;

public class GregorianCalendarDemo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String months[] = {
                "Jan", "Feb", "Mar", "Apr",
                  "May", "Jun", "Jul", "Aug",
                  "Sep", "Oct", "Nov", "Dec"};
        
        int year;
        //初始化Gregorian日历
        //使用当前时间和日期
        //默认为本地时间和时区
        GregorianCalendar gcalendar = new GregorianCalendar();
        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("当前年份不是闰年");
        }
        
    }

}
原文地址:https://www.cnblogs.com/cindy-cindy/p/6830320.html