除了String这个类在日常的项目中比较常用之外,有关时间和日期的操作也是经常遇到的,本篇就讲详细介绍下Java API中对时间和日期的支持。其实在Java 8之前时间日期的API并不是很好用,以至于人们在项目中大多使用的是一个第三方库 Joda-Time,当然Java 8 吸收了该库的大部分优点,改进了相关API,现在的时间日期处理接口相对以前来说是好用很多,本篇也将学习下这个优秀的第三方库。下面是本篇主要涉及内容:

  • 古老的Date类

  • 处理年月日的年历类Calendar

  • 格式化字符串和日期对象的DateFormat格式转换类

  • 好用的SimpleDateFormat实现类

  • Joda-Time库

一、古老的Date类
     Date这个类自jdk1.0开始就被设计出来, 从它的源代码中我们也是可以看出来,Date类曾经扮演过很重要的角色,jdk早期的版本中有关日期和时间的操作几乎都是由Date类完成的,下面我们一起看看它的源码:

private transient long fastTime;

首先Date中有封装一个long类型的变量,这个变量是整个时间日期操作的对象,也就是我们使用该变量代表时间和日期。下面说明它是如何表示时间和日期的。所有计算机中的时间都是用一个整数表示的,该整数的值代表的是距离格林尼治标准时间(1970年1月1日0时0分0秒)的毫秒数,也就是说fastTime值为1000的时候代表时间为1970年1月1日0时0分1秒。至于为什么是这个时间,由于种种历史原因大家也可以去了解下,此处不再赘述。

由于该类中大部分方法都被注解了@Deprecated,已经不再推荐使用了,所以接下来我们主要还是看看其中还保留着的方法。只剩下两个构造方法:

        		

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式