1、Calendar类概述 

  Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等

  日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

2、成员方法     

  public static Calendar getInstance():初始化,返回子类对象

  public int get(int field):返回给定日历字段的值

  public void add(int field,int amount):根据给定的日历字段和对应的时间,来对当前的日历进行操作

      public final void set(int year,int month,int date):设置当前日历的年月日
举例1:
  1. /*
  2. * Calendar:它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)
  3. * 提供了一些方法。
  4. * public int get(int field):返回给定日历字段的值。日历类中的每个日历字段都是静态的成员变量,并且是int类型。
  5. */
  6. public class CalendarDemo {
  7. public static void main(String[] args) {
  8. // 其日历字段已由当前日期和时间初始化:
  9. Calendar rightNow = Calendar.getInstance();// 子类对象
  10. // 获取年
  11. int year = rightNow.get(Calendar.YEAR);
  12. // 获取月
  13. int month = rightNow.get(Calendar.MONTH);//从0开始算起
  14. // 获取日
  15. int date = rightNow.get(Calendar.DATE);
  16. System.out.println(year + "年" + (month + 1) + "月" + date + "日");
  17. }
  18. }

举例2:

  1. import java.util.Calendar;
  2. /*
  3. * public void add(int field,int amount):根据给定的日历字段和对应的时间,来对当前的日历进行操作。
  4. * public final void set(int year,int month,int date):设置当前日历的年月日
  5. */
  6. public class CalendarDemo02 {
  7. public static void main(String[] args) {
  8. Calendar c = Calendar.getInstance();// 子类对象
  9. // 获取年
  10. int year = c.get(Calendar.YEAR);
  11. // 获取月
  12. int month = c.get(Calendar.MONTH);//从0开始算起
  13. // 获取日
  14. int date = c.get(Calendar.DATE);
  15. System.out.println(year + "年" + (month + 1) + "月" + date + "日");
  16. //3年前的今天
  17. c.add(Calendar.YEAR,-3);
  18. year = c.get(Calendar.YEAR);
  19. // 获取月
  20. month = c.get(Calendar.MONTH);
  21. // 获取日
  22. date = c.get(Calendar.DATE);
  23. System.out.println(year + "年" + (month + 1) + "月" + date + "日");
  24. //5年后的10天前
  25. c.add(Calendar.YEAR,5);
  26. c.add(Calendar.DATE,-10);
  27. year = c.get(Calendar.YEAR);
  28. // 获取月
  29. month = c.get(Calendar.MONTH);
  30. // 获取日
  31. date = c.get(Calendar.DATE);
  32. System.out.println(year + "年" + (month + 1) + "月" + date + "日");
  33. //设置时间
  34. c.set(2011,11,11);
  35. year = c.get(Calendar.YEAR);
  36. // 获取月
  37. month = c.get(Calendar.MONTH);
  38. // 获取日
  39. date = c.get(Calendar.DATE);
  40. System.out.println(year + "年" + (month + 1) + "月" + date + "日");
  41. }
  42. }

举例3:获取任意一年的二月有多少天

  1. import java.util.Calendar;
  2. import java.util.Scanner;
  3. /*
  4. * 获取任意一年的二月有多少天
  5. *
  6. * 分析:
  7. * A:键盘录入任意的年份
  8. * B:设置日历对象的年月日
  9. * 年就是A输入的数据
  10. * 月是2
  11. * 日是1
  12. * C:把时间往前推一天,就是2月的最后一天
  13. * D:获取这一天输出即可
  14. */
  15. public class CalendarDemo03 {
  16. public static void main(String[] args) {
  17. // 键盘录入任意的年份
  18. Scanner sc = new Scanner(System.in);
  19. System.out.println("请输入年份:");
  20. int year = sc.nextInt();
  21. // 设置日历对象的年月日
  22. Calendar c = Calendar.getInstance();
  23. c.set(year, 2, 1); // 其实是这一年的3月1日
  24. // 把时间往前推一天,就是2月的最后一天
  25. c.add(Calendar.DATE, -1);
  26. // 获取这一天输出即可
  27. System.out.println(c.get(Calendar.DATE));
  28. }
  29. }
 
 
 
 
 
 
 
 

Java API —— Calendar类的更多相关文章

  1. Java API 常用类(一)

    Java API 常用类 super类详解 "super"关键字代表父类对象.通过使用super关键字,可以访问父类的属性或方法,也可以在子类构造方法中调用父类的构造方法,以便初始 ...

  2. Java基础-Calendar类常用方法介绍

    Java基础-Calendar类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Calendar类概念 Calendar 类是一个抽象类,它为特定瞬间与一组诸如 Y ...

  3. Java学习--Calendar 类的应用

    Calendar 类的应用 Date 类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法却遭到众多批评,不建议使用,更推荐使用 Calen ...

  4. Java.util.Calendar类

    Java.util.Calendar类 package myProject; import java.text.SimpleDateFormat; import java.util.Calendar; ...

  5. JAVA中Calendar 类的应用

    转自:https://www.imooc.com/code/2340 侵删! Date 类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法 ...

  6. java代码Calendar类

    总结:时间类Calendar.类代表当前时 Calendar c=Calendar.getInstance();,,Calendar是抽象类.Calendar的构造方法是私有的,API提供了getIn ...

  7. Java之Calendar类

    Calendar类概述 java.util.Calendar 是日历类,在Date后出现,替换掉了许多Date的方法.该类将所有可能用到的时间信息封装为静态成员变量,方便获取.日历类就是方便获取各个时 ...

  8. HDOJ(HDU) 2133 What day is it(认识下Java的Calendar类---日期类)

    Problem Description Today is Saturday, 17th Nov,2007. Now, if i tell you a date, can you tell me wha ...

  9. es2.4.6 java api 工具类

    网上找了很久没找到2.4.X 想要的java api 工具 自己写了一个,分享一下 导入所需的jar <!-- ElasticSearch begin --> <dependency ...

随机推荐

  1. .Net码农学Android---系统架构和基本概念

    至此,你应该已经完成以下前期准备事情: 1.安装完JDK 2.安装完SDK(并在Manager中进行相关版本的更新) 3.相关IDE(如eclipse) 4.安装完ADT 5.安装完AVD(如果你是真 ...

  2. CentOS安装thrift

    下载thrift依赖的东西  yum -y install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-dev ...

  3. Linux内核学习方法

    Makefile不是Make Love 从前在学校,混了四年,没有学到任何东西,每天就是逃课,上网,玩游戏,睡觉.毕业的时候,人家跟我说Makefile我完全不知,但是一说Make Love我就来劲了 ...

  4. IOS开发一些资源收集

    从别的地方看到的,多谢作者,现贴在这里备忘. 在线教程 iOS技术概述    我个人感觉这是开始iOS开发第一步,了解一下iOS整体的结构,有哪些支持类库.如何使用类库等等一切基础的概念性指示 iPh ...

  5. [System.Net]模拟Web请求编写简易单词查询客户端

    demo: 我就不上传了 前言 在实际生活中,网络请求的应用极其常见,比如使用浏览器,程序中我们还要调用webservice.那么浏览器是怎么请求网络资源的呢?不用它可以自己请求不? 答案是可以的. ...

  6. 关于const

    1.顶层const和底层const const修饰的对象本身是常量,则为顶层const,否则为底层const 如: const int a=10;        //a是int常量,顶层const i ...

  7. Nginx + Tomcat 动静分离实现负载均衡(转)

    0.前期准备 使用Debian环境.安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等. 1.一份Nginx.conf配置文件 # 定义Nginx运行的用户 和 用户组 如果对 ...

  8. 设计模式Builder(建造者)模式

    1.出现原因 在软件系统中,有时候会面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成:由于需求的变化,这个复杂的对象的各个部分可能面临着剧烈的变化,但是把他们组合在一起的算法 ...

  9. c++ 继承多个类 及虚函数

    #include <iostream>using namespace std; class BaseA {public:    virtual void say() {        co ...

  10. SpringJUnit4测试--测试无反应/控制台报空指针的解决---junit的jar冲突!

    前言: 前些日子碰到一个诡异的问题--用springJUnit进行测试,运行方法什么反应也没有,控制台 也没有输出,百度也没有答案--只好暂时作罢.今天我只好用上了排除法,建个测试小项目,将只要能测试 ...