Date类详解
Posted 新梦起航
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Date类详解相关的知识,希望对你有一定的参考价值。
今天阅读了Date的API文档,这这里做一下总结:
Date 是表示时间实例的一个类,它的精度为毫秒。
year 年份由一个整型数(Integer)来表示 --- 例 从1900 开始, 如果整数为20就代表 1920年
month 月份由一个整型数(Integer)表示 这个整数从0到11; 0是一月份,1是2月份,依次类推...... 11代表12月份
date 天(day of month) 由一个整型数(Integer)表示 这个整数的范围为1~31 在通常情况下。
hour 小时 由一个 0~23 范围的整数(Integer) 来表示, 0点到1点用0表示,依次类推....
minute 分钟由一个 0~59 范围的整数(Integer)表示
second 秒由一个 0~61范围的整数(Integer)表示, 60和61仅在有闰秒的时候出现。
在以上范围的情况下,如果赋值范围超过了特定的范围,系统会自动把多出的时间往后算,例如 0月32日,会认为为1月1日 (0代表1月(January), 1代表2(February)月)
Date 的父类为 java.lang.Object
其直接子类为: java.sql.Date java.sql.Time java.sql.Timestamp
其构造方法和描述
Date() 获取系统当前的时间,精度为到毫秒
Date(int year, int month, int date) 每个参数的范围以及代表的意思上面参数中已经描述, 此方法以废弃 由
Calendar.set(year + 1900, month, date) or GregorianCalendar(year + 1900, month, date) 代替
Date(int year, int month, int date, int hrs, int min) 此方法已由
Calendar.set(year + 1900, month, date, hrs, min)
or GregorianCalendar(year + 1900, month, date, hrs, min)
. 代替
Date(int year, int month, int date, int hrs, int min, int sec) 已废弃 由
Calendar.set(year + 1900, month, date, hrs, min, sec)
or GregorianCalendar(year + 1900, month, date, hrs, min, sec)
. 代替
Date(long date) 其中的参数date 为一个以1970 年1月1日 0时0分0秒为基准的时间戳,其数代表的为多少毫秒,可以获得一个距离1970年1月1日0时0分0秒为date毫秒的日期
Date(String s) 通过给定的字符串,获取字符串所代表的时间。 目前已废弃,由
DateFormat.parse(String s) 取代
Date 这个类的大部分方法都已过时,被其他类的方法所代替。
Date中的主要方法有
boolean after(Date when) 测试当前日期是不是比传入的日期靠后
boolean before(Date when) 和上个方法意思相反。
Object clone() 复制一份当前的实例
int compareTo(Date anotherDate) 比较两个日期的大小 ,和字符串比较类似 ,若两个日期相同则返回0, 若当前日期比另一个日期靠前则返回一个小于0的数, 若当前日期比另一个日期靠后(大)则返回一个大于0的数
boolean equals(Object obj) 比较两个日期是否相等
long getTime() 获取当前日期距离1970年1月1日0时0分0秒的毫秒数
获取时分秒 年月日,和设置时分秒,年月日 的方法都已被Calendar的响应的set 和 get 方法代替
格式话日期函数 由 DateFormat.parse(String s) 所代替
String toString() 把当前日期转化成字符串格式 默认格式为
dow mon dd hh:mm:ss zzz yyyy
dow 代表星期几
mon 代表月份
dd 代表当月的哪一天
zzz 代表时区
yyyy 代表年份
以上是关于Date类详解的主要内容,如果未能解决你的问题,请参考以下文章