Java开发笔记(四十一)日历工具Calendar

本文介绍了Java中的Calendar工具,作为Date的替代品,它在JDK1.1被引入并推荐使用。Calendar通过getInstance创建实例,get方法获取时间单位数值,如年份无需额外加1900。注意月份从0开始计数,星期从1开始但以星期日为首。此外,讲解了set方法用于设置时间,add方法实现时间相对值的修改,以及equals、before、after和compareTo等时间比较方法的使用。
摘要由CSDN通过智能技术生成

前面的文章提到,Date是Java最早的日期工具,估计当时的设计师是个技术宅男,未经过充分调研就拍脑袋写下了Date的源码,造成该工具存在先天不足,比如getYear方法返回的不是纯正的公元纪年、getHours方法无法区分12小时制和24小时制等等,这很不利于Java语言的国际化。故而从JDK1.1开始,Java又提供了一个日历工具Calendar,官方建议采用Calendar替代Date,并且Date的相关get方法都被标记为Deprecated(意思是已废弃)。接下来就来看看这个全新的Calendar该当如何使用。
首先,创建日历实例调用的是getInstance方法,而非new关键字,日历实例的获取代码如下所示:

// 创建一个日历实例
Calendar calendar = Calendar.getInstance();

其次,调用日历实例的get方法,获得指定时间单位的具体数值,例如类型Calendar.YEAR对应的是公元年份,类型Calendar.MONTH对应的是月份序号等等,以年份为例,具体的获取代码如下所示:

// 获取日历实例中的年份
int year = calendar.get(Calendar.YEAR);
System.out.println("year="+year);

从以上代码可见,此时得到的年份数值无需额外加上1900,果然比Date省事多了。不过通过Calendar获取其它时间单位仍有两点需要注意:
1、Calendar的月份依然从0开始计数,也就是说,日历工具获取的一月份数值为0,十二月份的数值为11,于是获取月份

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值