Java_Calendar日历类

  • 2020 年 09 月 29 日
  • 18次
  • 1220 字
  • 暂无评论

Calendar日历类构造、字段、方法

import java.util.Calendar;

public class Calendar日历类 {
    /**
     *     Calendar日历类构造、字段、方法
     */
    public static void main(String[] args) {
        {
            /**
             * Calendar构造
             *     由于 Calendar 类是一个抽象类,所以不能直接通过 new 关键字创建 Calendar 类的实例,可以借助于该类提供的静态方法 getInstance() 来获得一个 Calendar 对象。
             */
            Calendar rightNow = Calendar.getInstance();
        }
        {
            /**
             * Calendar类的字段
             */
            Calendar c = Calendar.getInstance();
            // static int AM:指示从午夜到中午之前这段时间的 AM_PM 字段值
            System.out.println("指示从午夜到中午之前这段时间的 AM_PM 字段值:c.AM = " + c.AM);
            // static int PM:指示从中午到午夜之前这段时间的AM_PM字段值
            System.out.println("指示从中午到午夜之前这段时间的AM_PM字段值:c.PM = " + c.PM);
            // static int AM_PM:get 和 set 的字段数字,指示 HOUR 是在中午之前还是在中午之后
            System.out.println("get 和 set 的字段数字,指示 HOUR 是在中午之前还是在中午之后:c.AM_PM = " + c.AM_PM);
            System.out.println();
            
            // static int MILLISECOND:get 和 set 的字段数字,指示一秒中的毫秒
            System.out.println("get 和 set 的字段数字,指示一秒中的毫秒: c.MILLISECOND = " + c.MILLISECOND);
            // static int SECOND:get 和 set 的字段数字,指示一分钟中的秒
            System.out.println("get 和 set 的字段数字,指示一分钟中的秒:" + c.SECOND);
            // static int MINUTE:get 和 set 字段数字,指示一小时中的分钟
            System.out.println("get 和 set 的字段数字,指示一小时中的分钟:c.MINUTE = " + c.MINUTE);
            // static int HOUR:get 和 set 的字段数字,指示上午或下午的小时
            System.out.println("get 和 set 的字段数字,指示上午或下午的小时:c.HOUR = " + c.HOUR);
            // static int HOUR_OF_DAY:get 和 set 的字段数字,指示一天中的小时
            System.out.println("get 和 set 的字段数字,指示一天中的小时: c.HOUR_OF_DAY = " + c.HOUR_OF_DAY);
            // static int DAY_OF_WEEK:get 和 set 的字段数字,指示一个星期天中的某天
            System.out.println("get 和 set 的字段数字,指示一个星期天中的某天:c.DAY_OF_WEEK = " + c.DAY_OF_WEEK);
            // static int DAY_OF_WEEK_IN_MONTH:get 和 set 的字段数字,指示当前月中的第几个星期
            System.out.println("get 和 set 的字段数字,指示当前月中的第几个星期:" + c.DAY_OF_WEEK_IN_MONTH);
            // static int DATE:get 和 set 的字段数字,指示一个月中的某天
            System.out.println("get 和 set 的字段数字,指示一个月中的某天:c.DATE = " + c.DATE);
            // static int DAY_OF_MONTH:get 和 set 的字段数字,指示一个月中的某天
            System.out.println("get 和 set 的字段数字,指示一个月中的某天:c.DAY_OF_MONTH = " + c.DAY_OF_MONTH);
            // static int MONTH:指示月份的的 get 和 set 字段数字
            System.out.println("指示月份的的 get 和 set 字段数字:c.MONTH = " + c.MONTH);
            // static int AY_OF_YEAR:get 和 set 的字段数字,指示当前年中的天数
            System.out.println("get 和 set 的字段数字,指示当前年中的天数:c.DAY_OF_YEAR = " + c.DAY_OF_YEAR);
            System.out.println();
            
            // protected long time:日历的当前设置时间,以毫秒为单位,表示自格林威治标准时间 1970 年 1 月 1 日0:00:00 后经过的时间
            System.out.println("日历的当前设置时间,以毫秒为单位,表示自格林威治标准时间 1970 年 1 月 1 日0:00:00 后经过的时间: = t.time (没看明白怎么用这些。。。。。)");
            // static int WEEK_OF_MONTH:get 和 set 的字段数字,指示当前月中的星期数
            System.out.println("get 和 set 的字段数字,指示当前月中的星期数:c.WEEK_OF_MONTH = " + c.WEEK_OF_MONTH);
            // static int WEEK_OF_YEAR:get 和 set 的字段数字,指示当前年中的星期数
            System.out.println("get 和 set 的字段数字,指示当前年中的星期数:c.WEEK_OF_YEAR = " + c.WEEK_OF_YEAR);
            // static int YEAR:指示年的 get 和 set 的字段数字
            System.out.println("指示年的 get 和 set 的字段数字:c.YEAR = " + c.YEAR);
            System.out.println();
        }
        {
            /**
             * Calendar类的方法
             */
            Calendar c = Calendar.getInstance();
            // abstract void add(int field, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量
            System.out.println("根据日历的规则,为给定的日历字段添加或减去指定的时间量:abstract void add(int field, int amount)");
            System.out.println("方法调用前年份:c.get(Calendar.YEAR) = " + c.get(Calendar.YEAR));
            System.out.println("为年份增加 2 :c.add(Calendar.YEAR, 2) = (该参数无返回值)");
            c.add(Calendar.YEAR, 2);
            System.out.println("方法调用后年份:c.get(Calendar.YEAR) = " + c.get(Calendar.YEAR));
            System.out.println();
            
            // boolean after(Object when):判断此 Calendar 表示的时间是否在指定的 Object 表示的时间之后,返回判断结果
            Object when = Calendar.getInstance();
            System.out.println("判断此 Calendar 表示的时间是否在指定的 Object 表示的时间之后,返回判断结果:c.after(when) = " + c.after(when));
            // boolean before(Object when):判断此 Calendar 表示的时间是否在指定的 Object 表示的时间之前,返回判断结果
            System.out.println("判断此 Calendar 表示的时间是否在指定的 Object 表示的时间之前,返回判断结果:c.before(when) = " + c.before(when));
            
            // int compareTO(Calendar calendar):比较两个 Calendar 对象表示的时间值(从历元至现在的毫秒偏移量)
            System.out.println("比较两个 Calendar 对象表示的时间值(从历元至现在的毫秒偏移量):c.compareTo(Calendar.getInstance()) = " + c.compareTo(Calendar.getInstance()));
            
            // int get(int field):返回给定日历字段的值
            System.out.println("返回给定日历字段的值: c.get(Calendar.DATE) = " + c.get(Calendar.DATE));
            
            // final Date getTime():返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象
            System.out.println("返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象:c.getTime() = " + c.getTime());
            
            // void set(int field, int value):将给定的日历字段设置为给定值。不管处于何种宽松性模式下,该值都不由此方法进行解释
            System.out.println("将给定的日历字段设置为给定值。不管处于何种宽松性模式下,该值都不由此方法进行解释:");
            System.out.println("方法调用前月份:" + c.get(Calendar.MONTH));
            System.out.println("设置月份为5: c.set(Calendar.MONTH, 5)");
            c.set(Calendar.MONTH, 5);
            System.out.println("方法调用前月份:" + c.get(Calendar.MONTH));
            System.out.println();
            
            // final void set(int year, int month, int date, int hourOfDay, int minute, int second)
            // 设置字段 YEAR、MONTH、DAY_OF_MONTH、HOUR、MINUTE 和 SECOND 的值,保留其他字段以前的值,如果无须保留,则先调用 clear()。
            // 需要注意在设置日历时,月份的起始数字为 0,而对于星期来说,周日为 0,周六为6
            System.out.println("设置字段 YEAR、MONTH、DAY_OF_MONTH、HOUR、MINUTE 和 SECOND 的值,保留其他字段以前的值,如果无须保留,则先调用 clear():");
            System.out.println("设置前:" + c.getTime());
            System.out.println("设置为:c.set(2020, 8, 29, 12, 9, 1)");
            c.set(2000, 0, 1, 1, 1, 1);
            System.out.println("设置后:" + c.getTime());
            System.out.println();
            
            // static Calendar getInstance():使用默认时区和语言环境一个日历。返回的 Calendar 基于当前时间,使用了默认时区和默认语言环境
            System.out.println(c.getInstance().getTime());
        }
    }
}

运行截图:

Calendar日历类.jpg


版权属于:Houzi0

本文链接:https://houzi0.com/archives/14.html



—— 暂无评论 ——

OωO