一、时间工具类Calendar

  1、工具类的获取,可以直接获取它的抽象类,也可以new它的实现类,代码如下:

import java.io.*;
import java.util.*;public class CalendarGet
{
  public static void main(String[] args) {Calendar calendar = Calendar.getInstance();if (calendar instanceof GregorianCalendar)System.out.println("GregorianCalendar是calendar的实现";}
}

  2、工具类Calendar的使用方法

// 获取某日期的节点号public void getDate(Date d) {Calendar ca = Calendar.getInstance();ca.setTime(d);int year= ca.get(Calendar.YEAR);        //年int month= ca.get(Calendar.MONTH)+1;      //月int day = ca.get(Calendar.DAY_OF_MONTH);       //日int hour= ca.get(Calendar.HOUR_OF_DAY);  //时int month= ca.get(Calendar.MINUTE);      //分int month= ca.get(Calendar.SENCOND);      //秒}

// 给定日期的前/后n天
  public void getDateForDayNum() {
    Calendar ca = Calendar.getInstance();
    ca.setTime(new Date());
    ca.add(Calendar.DAY_OF_MONTH, n);  //当前时间n天后的时间

    Date dayAfter = ca.getTime();

    ca.add(Calendar.DAY_OF_MONTH, -n);  //当前时间n天前的时间

    Date dayBefore = ca.getTime();

      ca.add(Calendar.MONTH, n);  //当前时间n月后的时间

    Date monthAfter = ca.getTime();

    ca.add(Calendar.MONTH, -n);  //当前时间n月前的时间

    Date monthBefore = ca.getTime();

      ca.add(Calendar.YEAR, -n);  //当前时间n年前的时间

    Date yearBefore = ca.getTime();

    ca.add(Calendar.YEAR, n);  //当前时间n年后的时间

    Date yearAfter = ca.getTime();

      ca.add(Calendar.HOUR, -n);  //当前时间n小时前的时间

    Date hourBefore = ca.getTime();

    ca.add(Calendar.HOUR, n);  //当前时间n小时后的时间

    Date hourAfter = ca.getTime();

    

  // 当前时间前n个月的时间
    public void getLastDay() {
      Calendar ca = Calendar.getInstance();
      ca.setTime(new Date());
      ca.roll(Calendar.MONTH, n);  // 向后回滚n个月
      ca.set(Calendar.DATE, 0);
      Date time = ca.getTime();
    }

  // 某个月有多少天
    public int getDateNumForDate(Date date) {
      Calendar ca = Calendar.getInstance();
      ca.setTime(date);
      ca.set(Calendar.DATE, 0);
      return ca.get(Calendar.DATE);
    }

  // 某年某月是星期几(周日返回0,周一到周六就是1-6)
    public int getWeek(Date date) {
      Calendar ca = Calendar.getInstance();
      int week = ca.get(Calendar.DAY_OF_WEEK) - 1;
      return week;
    }

}

转载于:https://www.cnblogs.com/zzb-yp/p/11379006.html

工具类篇——时间处理Calendar类相关推荐

  1. java获取calendar_java--获取当前时间(Calendar类)

    用Calendar类来获取当前的时间 代码: import java.util.Calendar; public class CalendarDemo { /** * @param args */ p ...

  2. java查询日期类的表,JAVA菜鸟入门篇 - 时间处理相关类实例:打印该月日期表 (29)...

    利用前面我们所学习有关时间处理类,Date.DateFormat.SimpleDateFormat以及Calendar和GregorianCalendar类 编写一个按照用户定义格式(格式:2015- ...

  3. java 日期类 周_Java中用Calendar类计算周和周的起始日期

    package com.tongyue.hot.web; import java.util.Calendar; import java.util.Date; import java.util.Greg ...

  4. 5、时间日期的处理:Java Date类、Calendar类详解

    在 Java 中获取当前时间,可以使用 java.util.Date 类和 java.util.Calendar 类完成.其中,Date 类主要封装了系统的日期和时间的信息,Calendar 类则会根 ...

  5. Date类与Calendar类

    一.Date类 1.认识Date类 java.util包下的Date类,Date对象既包含日期,该类从JDK1.0就开始有了,所以大部分的构造器和方法已经过时,编写时有时会报错. Date类一共有6个 ...

  6. JavaSE核心之一:Date类、Calendar类、Math类、枚举;

    1.Date类 1) java.util.Date类用于封装日期及时间信息,一般仅用它显示某个日期,不对他作任何操作处理,作处理用Calendar类,计算方便. 2) Date 类本质上拥有一个lon ...

  7. Calendar类的常用成员方法

    package com.learn.demo04.Calendar;import java.util.Calendar; import java.util.Date;/*Calendar类的常用成员方 ...

  8. JAVA的Date类与Calendar类

    转自:http://www.cdtarena.com/javapx/201307/9171.html Date类 在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际 ...

  9. 【Java-----日期类(三)之Calendar类详解】

    Calendar类概述 Calendar类是Java.util包中提供的一个抽象类,该类从JDK1.1开始出现,作为Date类的替代方案,Calendar类中包含了对不同国家地区日历的处理,Calen ...

  10. Date、Calendar类

     时间和日期处理 在程序中,某个固定的时间代表的都是一个时间点,也就是一个时间的瞬间,例如2009年3月8日15点50分0秒,在实际的应用中,经常需要对于两个时间进行比较或计算时间之间的差值,这些功能 ...

最新文章

  1. 算法面试不懂技巧,你纯属被刷
  2. 程序员面试被问:公司遇难你愿意留下?网友:辉煌时升职吗
  3. pygame显示图片的方法_使用Pygame进行游戏开发(1)
  4. #每日一题:小计算器(模拟)
  5. 个人觉得好的文章链接推荐【转载,侵权立删】
  6. Error:The module 'app' is an Android project without build variants, and cannot be built.
  7. 目标检测综述——单阶段检测器
  8. type=xhr的500错误
  9. 2013年计算机考试题库,2013年计算机三级数据库上机冲刺试题一及答案
  10. 下拉框只读的时候没有下拉图标_百度下拉框营销秘密是什么
  11. 走楼梯c语言程序,动态规划走楼梯
  12. 惊艳全网的裸眼3D巨屏,竟是一场视觉骗局?
  13. 2019.4.8-pandas 读写csv;dorp删除行、列
  14. vlc-android源码git下载
  15. 阿里、腾讯“打包”领跑云计算,两极格局将就此固化?
  16. Java调试--排查类工具
  17. EditPlus安装Json格式化工具功能
  18. VB.NET的 结构和类
  19. zz: 胡适:赠与今年的大学毕业生
  20. CentOS 6.4安装配置ldap

热门文章

  1. docker容器详解(入门必看)(一)
  2. NYOJ-111分数加减法
  3. 小米架构调整:将销售与服务部改组为中国区 王川任总裁
  4. 谈谈大型分布式网站架构技术总结
  5. Oracle 9i安全审计技术在电子政务中的应用
  6. 信号量——内核信号量、POSIX信号量、system V信号量
  7. text展示html,textview完美展示html格式代码
  8. 怎样取消隐式推送_九推,怎样寻找捡漏的机会?
  9. CACHECLOUDV1.0慢日志定时任务创建流程分析
  10. 网上五花八门的单片机教程,到底应该怎么整理学习过程