• Java Calendar


    1 什么是Calendar?

    • Calendar(读音:[ˈkælɪndə(r)] )是java util包下的一个工具类,提供了不同日期格式的处理。
    • Calendar是一个抽象类,不能用构造器来创建,但Calendar提供了几个静态方法来获取Calendar类。例如:Calendar.getInstance()。
    • Calendar类实现了公历日历,其子类GregorianCalendar是它的一个具体体现。

    2 Calendar的使用

    2.1 创建

    Calendar calendar = Calendar.getInstance();

    Calendar calendar = new GregorianCalendar();

    2.2 方法

    2.2.1 get(int field)获取指定字段的值

     1     Calendar c = Calendar.getInstance();
     2     System.out.println(c);
     3 
     4     //获取当前日历的所表示的年份
     5     int year = c.get(Calendar.YEAR);
     6     System.out.println(year);
     7 
     8     //获取给定的日历所表示的月份
     9     int month = c.get(Calendar.MONTH);
    10     System.out.println(month);
    11 
    12     //获取给定的日历所表示的日期(本月的第几天)
    13     int day = c.get(Calendar.DAY_OF_MONTH);
    14     System.out.println(day);
    15 
    16     //获取给定的日历所表示的小时
    17     int hour = c.get(Calendar.HOUR_OF_DAY); //24小时制   HOUR:12小时制
    18     System.out.println(hour);        
    19     
    20    //获取给定的日历所表示的分钟
    21     int min = c.get(Calendar.MINUTE);
    22     System.out.println(min);
    23 
    24     //获取给定的日历所表示的秒钟
    25     int second = c.get(Calendar.SECOND);
    26     System.out.println(second);
    27 
    28     //获取今天是星期几   
    29     int week = c.get(Calendar.DAY_OF_WEEK);  //从星期天开始计算,如果今天是星期二,则返回3
    30     System.out.println("当前是这周的第几天:"+week);

    2.2.2 set(int field,int value)设置指定字段的值

     1       Calendar c2 = Calendar.getInstance();
     2           
     3           //设置日期为 2000年8月31日
     4           c2.set(2000, 7, 31); 
     5           //设置年份
     6           c2.set(Calendar.YEAR, 2022);
     7           //设置月份 
     8           c2.set(Calendar.MONTH, 8);
     9          //设置日(该月的第几天)
    10           c2.set(Calendar.DAY_OF_MONTH,15);
    11       
    12          System.out.println(c2);        

    注意:月份获取需要 +1,那么,赋值时需要 -1!

       月份获取需要 +1,那么,赋值时需要 -1!

               月份获取需要 +1,那么,赋值时需要 -1!

     2.2.3 getActualMaximum(int field) 获取指定字段具备的最大值

    (读音:[ˈæktʃuəl]  [ˈmæksɪməm])

    1     //获取指定字段具备最大值,获得最大月份
    2     int max = c2.getActualMaximum(Calendar.MONTH);
    3     System.out.println(max);
    4 
    5     //获取当前日历所表示月份的最大天数
    6     int days = c2.getActualMaximum(Calendar.DAY_OF_MONTH);
    7     System.out.println(days);

    2.2.4 getTime()获取当前日历所表示的java.util.Date对象

    1     //将日历对象转换为java.util.Date
    2     Date date = c2.getTime();
    3     System.out.println(date);

    2.2.5  getTimeInMillis()获取当前日历所表示时间的毫秒数

    (从1970年1月1日 0时0分0秒开始)

    1     //Calendar类型转换到Timestamp类型
    2     Timestamp  t = c2.getTimeInMillis();
    3     System.out.println(t);

    2.2.6 add()对当前日历进行计算

    1     //当前日历加上10天
    2     c2.add(Calendar.DATE, 10);
    3     ////当前日历减去10天
    4     c1.add(Calendar.DATE, -10);

    Calendar.MONTH等其他字段属性add使用同此

    3 GregorianCalendar类

    3.1常用方法

    1     GregorianCalendar gc = new GregorianCalendar();
    2     //判断给定的年份是否是闰年
    3     boolean leapYear = gc.isLeapYear(2020);

    其他方法列表

    项目使用展示:

     

     

  • 相关阅读:
    openSUSE 13.1 Milestone 4 发布
    Neo4j 2.0 M4 发布
    iBoxDB for .NET v1.5发布, 移动NoSQL数据库
    GNU libc (Glibc) 2.18 发布
    Android 开源项目维护者宣布退出
    Jeasyframe 开源框架 稳定版 V1.5 发布
    Spring Mobile 1.1.0.RC1 和 1.0.2 发布
    Deis logo 开源PaaS系统 Deis
    EasyCriteria 3.0 发布
    TypeScript 0.9.1 发布,新增 typeof 关键字
  • 原文地址:https://www.cnblogs.com/chensisi/p/13898072.html
Copyright © 2020-2023  润新知