java.util.Calendar简介
Calendar是一个抽象类,我们无法直接实例化它,它有一个具体子类实体类java.util.GregorianCalendar,这个类实现的就是我们日常所用的公历历法,或者叫做阳历。我们可以直接使用new命令创建它的实例,或者使用Calendar类的getInstance方法来获得它实例.
Calendar c1 = Calendar.getInstance();
Calendar c2 = new GregorianCalendar();
// 参数含义依次为:年、月、日(、时、分、秒 ),
Calendar c3 = new GregorianCalendar(2008, 8, 8, 18, 10, 5);
有两个地方需要注意:
JAVA表示的月份是从0开始的,也就是说它用来表示月份的数值总是比实际月份值小1。因此我们要表示8月份,就是应该设置8-1=7这个值。
GregorianCalendar的小时数是24小时制的。
为了避免出现因为忘记处理1的差值而设置了错误的月份,也让代码看起来更加直观,推荐大家使用定义在Calendar类的的这些常量来代替直接用数字表示月份:
一月:Calendar.JANUARY = 0
二月:Calendar.FEBRUARY = 1
三月:Calendar.MARCH = 2
四月:Calendar.APRIL = 3
五月:Calendar.MAY = 4
六月:Calendar.JUNE = 5
七月:Calendar.JULY = 6
八月:Calendar.AUGUST = 7
九月:Calendar.SEPTEMBER = 8
十月:Calendar.OCTOBER = 9
十一月:Calendar.NOVEMBER = 10
十二月:Calendar.DECEMBER = 11
如果我们想要从Calendar对象获得各种属性的值,就需要调用它的get(int field)方法,这个方法接收一个int型的参数,并且根据这个给定参数的值来返回相应的属性的值。
当前时刻:2008年07月22日 13:16:07.421
属性名称:Calendar.AM_PM
代表含义:上下午标识,上午返回Calendar.AM=0,下午返回Calendar.PM=1
测试结果:1
属性名称:Calendar.DATE
代表含义:一个月中的第几天,同Calendar.DAY_OF_MONTH
测试结果:22
属性名称:Calendar.DAY_OF_MONTH
代表含义:一个月中的第几天,同Calendar.DATE
测试结果:22
属性名称:Calendar.DAY_OF_WEEK
代表含义:一周中的第几天,对应星期几,第一天为星期日,于此类推。
星期日:Calendar.SUNDAY=1
星期一:Calendar.MONDAY=2
星期二:Calendar.TUESDAY=3
星期三:Calendar.WEDNESDAY=4
星期四:Calendar.THURSDAY=5
星期五:Calendar.FRIDAY=6
星期六:Calendar.SATURDAY=7
测试结果:3
属性名称:Calendar.DAY_OF_WEEK_IN_MONTH
代表含义:这一天所对应的星期几在该月中是第几次出现
测试结果:4
属性名称:Calendar.DAY_OF_YEAR
代表含义:一年中的第几天
测试结果:204
属性名称:Calendar.HOUR
代表含义:12小时制下的小时数,中午和午夜表示为0
测试结果:1
属性名称:Calendar.HOUR_OF_DAY
代表含义:24小时制下的小时数,午夜表示为0
测试结果:13
属性名称:Calendar.MILLISECOND
代表含义:毫秒数
测试结果:421
属性名称:Calendar.MINUTE
代表含义:分钟
测试结果:16
属性名称:Calendar.MONTH
代表含义:月份,从0到11表示12个月份,比实际月份值小1
测试结果:6
属性名称:Calendar.SECOND
代表含义:秒
测试结果:7
属性名称:Calendar.WEEK_OF_MONTH
代表含义:一个月中的第几个星期
测试结果:4
属性名称:Calendar.WEEK_OF_YEAR
代表含义:一年中的第几个星期
测试结果:30
属性名称:Calendar.YEAR
代表含义:年份
测试结果:2008
java.util.Calendar简介的更多相关文章
- Android 开发笔记 “java.util.Calendar.compareTo()”
java.util.Calendar.compareTo() 方法比较Calendar对象和anotherCalendar对象之间的时间值(毫秒偏移量). 声明 以下是java.util.Calen ...
- java.util包简介
java.util包含集合框架.遗留的 collection 类.事件模型.日期和时间设施.国际化和各种实用工具类(字符串标记生成器.随机数生成器和位数组.日期Date类.堆栈Stack类.向量Vec ...
- 常用类一一时间处理相关类一一java.util.Tomezone(java.util.Calendar , java.util.Date , java.text.DateFormat)
时间处理相关类 时间是一个一维的东东.所以,我们需要一把刻度尺来区表达和度量时间.在计算机世界,我们把1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一). ...
- java.util.Calendar
package day14; import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer; import java.util.Cal ...
- java.sql.Date/ java.util.Date/ java.util.Calendar 用法与区别
在 JDK API 这样解释," 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值.它也允许格式化和解析日期字符串.不过,这些函数的 ...
- java.util.Calendar获取时间区间问题
虽然java8的LocalDate已经出来,但是很多项目以及自己习惯上还是使用Date,这里还是简单介绍一下如何通过java.util.Calendar获取时间区间. 1 通过calendar.get ...
- Java.util.Calendar类
Java.util.Calendar类 package myProject; import java.text.SimpleDateFormat; import java.util.Calendar; ...
- java.util.concurrent简介
文章目录 主要的组件 Executor ExecutorService ScheduledExecutorService Future CountDownLatch CyclicBarrier Sem ...
- java.util.Timer简介
Timer是用于管理在后台执行的延迟任务或周期性任务,其中的任务使用java.util.TimerTask表示.任务的执行方式有两种: 按固定速率执行:即scheduleAtFixedRate的两个重 ...
随机推荐
- spring boot +mybatis分页查询
这是spring boot集合mybatis的分页查询. pom依赖: <!-- 分页插件 --> <dependency> <groupId>com.github ...
- Oracle SQL Developer 日期格式显示设置
ORACLE的SQL Developer工具默认的日期格式DD-MON-RR,在SQL查询中经常需要查看详细的时间信息,默认的时间显示格式不能满足这一需要, 此时你必须修改日期格式.具体如下所示 工具 ...
- Django - 安装filebrowser发生Error finding Upload-Folder错误
Error finding Upload-Folder (site.storage.location + site.directory). Maybe it does not exist? 解决: F ...
- HashMap和Hashtable的区别?
HashMap和Hashtable的区别? 解答:HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都实现了Map接口,主要区别 在于HashMap允许空(null)键值(key ...
- 对MathType做个介绍
MathType是一款专门用来编辑数学公式的公式编辑器,它里面包含有超过1000种的符号与模板,完全能够满足你的使用需要.特别是对于专业人士,非常的方便.下面我们就来给大家介绍介绍. 1.安装过程 与 ...
- Projects\image_match3图像特征匹配调试记录
D:\文件及下载相关\文档\Visual Studio \Projects\image_match3\image_match #include "opencv2/core/core.hpp& ...
- 学习DBCC CHECKIDENT
检查指定表的当前标识值,如有必要,还对标识值进行更正. 语法DBCC CHECKIDENT ( 'table_name' [ , { NORESEED ...
- cygwin下编译zlib源代码
本文介绍在cygwin下编译zlib源代码的方法步骤,这个过程尽管简单,但还是有一些须要注意的地方. zlib源代码下载地址: http://www.zlib.net/ 下载后.解压就会生成zlib- ...
- Java RSA加密以及验签
签名加密以及验签工具类: 一般秘钥分为3个key 1.自己生成的私钥, 2.通过私钥生成的公钥1 3.通过提交公钥1给某宝,获取的公钥2. RSA公钥加密算法简介 非对称加密算法.只有短的RSA钥匙才 ...
- dns解决测试微信二级域名访问问题
背景介绍: 1:解决本地不能通过域名访问问题: 2:解决微信设置二级域名且本地iis站点使用非80端口号问题: ps:网站中微信部分在global中设置了重定向,代码已经修改为必须通过“wechat. ...