Java API —— Calendar类
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):根据给定的日历字段和对应的时间,来对当前的日历进行操作
- /*
- * Calendar:它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)
- * 提供了一些方法。
- * public int get(int field):返回给定日历字段的值。日历类中的每个日历字段都是静态的成员变量,并且是int类型。
- */
- public class CalendarDemo {
- public static void main(String[] args) {
- // 其日历字段已由当前日期和时间初始化:
- Calendar rightNow = Calendar.getInstance();// 子类对象
- // 获取年
- int year = rightNow.get(Calendar.YEAR);
- // 获取月
- int month = rightNow.get(Calendar.MONTH);//从0开始算起
- // 获取日
- int date = rightNow.get(Calendar.DATE);
- System.out.println(year + "年" + (month + 1) + "月" + date + "日");
- }
- }
举例2:
- import java.util.Calendar;
- /*
- * public void add(int field,int amount):根据给定的日历字段和对应的时间,来对当前的日历进行操作。
- * public final void set(int year,int month,int date):设置当前日历的年月日
- */
- public class CalendarDemo02 {
- public static void main(String[] args) {
- Calendar c = Calendar.getInstance();// 子类对象
- // 获取年
- int year = c.get(Calendar.YEAR);
- // 获取月
- int month = c.get(Calendar.MONTH);//从0开始算起
- // 获取日
- int date = c.get(Calendar.DATE);
- System.out.println(year + "年" + (month + 1) + "月" + date + "日");
- //3年前的今天
- c.add(Calendar.YEAR,-3);
- year = c.get(Calendar.YEAR);
- // 获取月
- month = c.get(Calendar.MONTH);
- // 获取日
- date = c.get(Calendar.DATE);
- System.out.println(year + "年" + (month + 1) + "月" + date + "日");
- //5年后的10天前
- c.add(Calendar.YEAR,5);
- c.add(Calendar.DATE,-10);
- year = c.get(Calendar.YEAR);
- // 获取月
- month = c.get(Calendar.MONTH);
- // 获取日
- date = c.get(Calendar.DATE);
- System.out.println(year + "年" + (month + 1) + "月" + date + "日");
- //设置时间
- c.set(2011,11,11);
- year = c.get(Calendar.YEAR);
- // 获取月
- month = c.get(Calendar.MONTH);
- // 获取日
- date = c.get(Calendar.DATE);
- System.out.println(year + "年" + (month + 1) + "月" + date + "日");
- }
- }
举例3:获取任意一年的二月有多少天
- import java.util.Calendar;
- import java.util.Scanner;
- /*
- * 获取任意一年的二月有多少天
- *
- * 分析:
- * A:键盘录入任意的年份
- * B:设置日历对象的年月日
- * 年就是A输入的数据
- * 月是2
- * 日是1
- * C:把时间往前推一天,就是2月的最后一天
- * D:获取这一天输出即可
- */
- public class CalendarDemo03 {
- public static void main(String[] args) {
- // 键盘录入任意的年份
- Scanner sc = new Scanner(System.in);
- System.out.println("请输入年份:");
- int year = sc.nextInt();
- // 设置日历对象的年月日
- Calendar c = Calendar.getInstance();
- c.set(year, 2, 1); // 其实是这一年的3月1日
- // 把时间往前推一天,就是2月的最后一天
- c.add(Calendar.DATE, -1);
- // 获取这一天输出即可
- System.out.println(c.get(Calendar.DATE));
- }
- }
Java API —— Calendar类的更多相关文章
- Java API 常用类(一)
Java API 常用类 super类详解 "super"关键字代表父类对象.通过使用super关键字,可以访问父类的属性或方法,也可以在子类构造方法中调用父类的构造方法,以便初始 ...
- Java基础-Calendar类常用方法介绍
Java基础-Calendar类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Calendar类概念 Calendar 类是一个抽象类,它为特定瞬间与一组诸如 Y ...
- Java学习--Calendar 类的应用
Calendar 类的应用 Date 类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法却遭到众多批评,不建议使用,更推荐使用 Calen ...
- Java.util.Calendar类
Java.util.Calendar类 package myProject; import java.text.SimpleDateFormat; import java.util.Calendar; ...
- JAVA中Calendar 类的应用
转自:https://www.imooc.com/code/2340 侵删! Date 类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法 ...
- java代码Calendar类
总结:时间类Calendar.类代表当前时 Calendar c=Calendar.getInstance();,,Calendar是抽象类.Calendar的构造方法是私有的,API提供了getIn ...
- Java之Calendar类
Calendar类概述 java.util.Calendar 是日历类,在Date后出现,替换掉了许多Date的方法.该类将所有可能用到的时间信息封装为静态成员变量,方便获取.日历类就是方便获取各个时 ...
- 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 ...
- es2.4.6 java api 工具类
网上找了很久没找到2.4.X 想要的java api 工具 自己写了一个,分享一下 导入所需的jar <!-- ElasticSearch begin --> <dependency ...
随机推荐
- .Net码农学Android---系统架构和基本概念
至此,你应该已经完成以下前期准备事情: 1.安装完JDK 2.安装完SDK(并在Manager中进行相关版本的更新) 3.相关IDE(如eclipse) 4.安装完ADT 5.安装完AVD(如果你是真 ...
- CentOS安装thrift
下载thrift依赖的东西 yum -y install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-dev ...
- Linux内核学习方法
Makefile不是Make Love 从前在学校,混了四年,没有学到任何东西,每天就是逃课,上网,玩游戏,睡觉.毕业的时候,人家跟我说Makefile我完全不知,但是一说Make Love我就来劲了 ...
- IOS开发一些资源收集
从别的地方看到的,多谢作者,现贴在这里备忘. 在线教程 iOS技术概述 我个人感觉这是开始iOS开发第一步,了解一下iOS整体的结构,有哪些支持类库.如何使用类库等等一切基础的概念性指示 iPh ...
- [System.Net]模拟Web请求编写简易单词查询客户端
demo: 我就不上传了 前言 在实际生活中,网络请求的应用极其常见,比如使用浏览器,程序中我们还要调用webservice.那么浏览器是怎么请求网络资源的呢?不用它可以自己请求不? 答案是可以的. ...
- 关于const
1.顶层const和底层const const修饰的对象本身是常量,则为顶层const,否则为底层const 如: const int a=10; //a是int常量,顶层const i ...
- Nginx + Tomcat 动静分离实现负载均衡(转)
0.前期准备 使用Debian环境.安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等. 1.一份Nginx.conf配置文件 # 定义Nginx运行的用户 和 用户组 如果对 ...
- 设计模式Builder(建造者)模式
1.出现原因 在软件系统中,有时候会面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成:由于需求的变化,这个复杂的对象的各个部分可能面临着剧烈的变化,但是把他们组合在一起的算法 ...
- c++ 继承多个类 及虚函数
#include <iostream>using namespace std; class BaseA {public: virtual void say() { co ...
- SpringJUnit4测试--测试无反应/控制台报空指针的解决---junit的jar冲突!
前言: 前些日子碰到一个诡异的问题--用springJUnit进行测试,运行方法什么反应也没有,控制台 也没有输出,百度也没有答案--只好暂时作罢.今天我只好用上了排除法,建个测试小项目,将只要能测试 ...