Calendar

package cn.jiu.com;

import java.util.Calendar;
import java.util.Scanner;

/*
 * 一、Calendar ?
 * 
 * 1.日历  对 Date类中的 很多方法做改进
 * 2.是一个抽象类 不能建立对象---就是不能new! 需要子类实现  
 * 3.
 * 【特殊】 不需要创建子类对象 直接使用他的静态方法 获取!-----getInstance();
 * 
 *  
 * 二、主要方法?  三个 set add get
 * 
 * 1.set  设置  年月份!  
 * set设置日期  格式? set(年,月,日) 中间用用逗号隔开!
 * 
 * 2.add
 * add修改日期  格式? add(Calendar. YEAR, 1 ) 年数加一! (Calendar.XXXX,num);  一个点、 一个逗号、num的正负 决定所设置年月日的加减! 年月日大写!
 * 
 * 3.get
 * get 获取年月日 格式  get(Calendar.YEAR);    中间是一个点号 .   后面接所要获取的年月日, 一次获取一个!
 * 
 *注意! 通过 set 和 add 得到的年月日!不能直接输出 ,需要先用 get获得!------[菜鸟自己认为的]
 *
 *三、getInstance();?------------->在java中,可以使用这种方式使用单例模式创建类的实例!
 *    
 *        所谓单例模式就是一个类有且只有一个实例,不像object ob=new object();的这种方式去实例化后去使用。
 *    
 */

public class CalendarText 
{
    public static void main(String[] args)
    {

            run();
            add();    //闰年计算!
    }
    //Calendar  相关的方法!
    public static void run(){
        
        Calendar c1=Calendar.getInstance();                    //创建对象
        c1.set(2000, 2, 1);                                    //设置年月日!
        int year=c1.get(Calendar.YEAR);                        //获取年月日! 并输出!
        int day=c1.get(Calendar.DAY_OF_MONTH);        
        int month=c1.get(Calendar.MONTH);                                                    
        System.out.println(year+"年"+month+"月"+day+"日");    //输出获取的年月日
        
        //显示add  修改日期方法!
        c1.set(4, 2, 1);                                     //设置2就是三月  因为在类中是0-11; 减少一天 就是2月的最后一天,闰年29,平年28天!
                                                            //但是直接输出的话会显示是1月!如果不是闰年 ,你会发现输出的是1月28!侧面证实设置2就是3月!
        c1.add(Calendar. YEAR,0);                            //【num 的正负决定  年月日的加减!】
        c1.add(Calendar. MONTH,0);                     
        c1.add(Calendar. DAY_OF_MONTH,-1);
        
        int year01=c1.get(Calendar.YEAR);                        
        int day01=c1.get(Calendar.DAY_OF_MONTH);        
        int month01=c1.get(Calendar.MONTH);                                                    
        System.out.println(year01+"年"+month01+"月"+day01+"日");
        
    }
    //利用 Calendar 日历  进行闰年的判断!
    public static void add(){
        Calendar c=Calendar.getInstance();
        System.out.println("请输入要判断的年份,列如1995");
        int year= new Scanner(System.in).nextInt();
        c.set(year, 2,1);                                    //
        c.add(Calendar. DAY_OF_MONTH,-1);                    //
        int day=c.get(Calendar.DAY_OF_MONTH);
        if(day==29){
            System.out.println(year+"是闰年!");
        }else{
            System.out.println(year+"不是闰年!");
        }
    }
    
    
}
原文地址:https://www.cnblogs.com/ZXF6/p/10571334.html