Java中的日期类
1.Date,SimpleDateFormat,Calendar
java中日期处理;早期api一般使用这两个类:
Calendar对象和Date对象之间的互转
2 .将Calendar对象转换为Date(c.getTime())
Calendar c = Calendar.getInstance();
Date d = c.getTime();
3.将Date转换为Calendar对象(s.setTime(date))
Calendar c1 = Calendar.getInstance();
Date d1 = new Date();
//通过setTime()方法后,日历c1所表示的日期就d1的日期
c1.setTime(d1);
4. 日期和时间的处理: Joda-Time工具
(1)LocalDate/LocalTime/LocalDateTime
(2)Clock/System.currentTimelnMillis()/TimeZone.getDefault()
获取当前系统的毫秒数;距离 1970.01.01 00:00:00 000 到现在的毫秒数;
final Clock clock = Clock.systemUTC();
System.out.println( clock.instant() );
System.out.println( clock.millis() );
标准时间
-
UTC(Universal Time Coordinated),即协调世界时。全世界统一的世界标准时间。需要不规则地加入闰秒。
-
GMT
(Greenwich Mean Tim),格林尼治平均时间。
- 一般认为UTC和GMT是相等的,但是会存在0.9秒以内的误差,这是由于地球不规则自转引起的。
时区
- 本地时间,UTC+时区。东为正西为负。比如北京时间在东八区就是 UTC+(+0800)。
- DST,夏令时。是指夏天太阳升起比较早,将时钟拨快一个小时来提早日光的使用。欧美主要国家都引用了这个做法。如果在夏令时时区内 DST=UTC+时区+1。
时间戳
1900.01.01 00:00:00
- Unix时间(戳),表示当前时间到1970年1月1日00:00:00 UTC对应的秒数。
- 时间戳,示当前时间到1970年1月1日00:00:00 UTC对应的毫秒数。