Joda-Time 简介:既然无法摆脱时间,为何不设法简化时间处理?
2009-12-16 00:00:00 来源:WEB开发网然而,Date 确实有一个构造函数,您可以用来创建用时间表示某个瞬间的对象(除 “现在” 以外)。该方法使用距离 1970 年 1 月 1 日子时格林威治标准时间(也称为 epoch)以来的毫秒数作为一个参数,对时区进行校正。考虑到 Y2K 对软件开发企业的重要性,您可能会认为我已经记住了这个值 — 但是我没有。Date 也不过如此。
那么 Calendar 又如何呢?我将使用下面的方式创建必需的实例:
Calendar calendar = Calendar.getInstance();
calendar.set(2000, Calendar.JANUARY, 1, 0, 0, 0);
使用 Joda,代码应该类似如下所示:
DateTime dateTime = new DateTime(2000, 1, 1, 0, 0, 0, 0);
这一行简单代码没有太大的区别。但是现在我将使问题稍微复杂化。假设我希望在这个日期上加上 90 天并输出结果。使用 JDK,我需要使用清单 1 中的代码:
清单 1. 以 JDK 的方式向某一个瞬间加上 90 天并输出结果
Calendar calendar = Calendar.getInstance();
calendar.set(2000, Calendar.JANUARY, 1, 0, 0, 0);
SimpleDateFormat sdf =
new SimpleDateFormat("E MM/dd/yyyy HH:mm:ss.SSS");
calendar.add(Calendar.DAY_OF_MONTH, 90);
System.out.println(sdf.format(calendar.getTime()));
使用 Joda,代码如清单 2 所示:
清单 2. 以 Joda 的方式向某一个瞬间加上 90 天并输出结果
DateTime dateTime = new DateTime(2000, 1, 1, 0, 0, 0, 0);
System.out.println(dateTime.plusDays(90).toString("E MM/dd/yyyy HH:mm:ss.SSS");
- ››简介CentOS配置ssh系统技术
- ››Joda-Time 简介:既然无法摆脱时间,为何不设法简...
- ››Timer对象和TimerEvent事件
- ››简介:Oracle 11g分区
- ››Timeout error occurred trying to start MySQL D...
- ››简介穿过防火墙来远程控制协议分析仪
- ››简介Visual C++ 2008 Feature Pack
- ››简介使用Java编写Palm OS程序的解决方案
- ››简介使用Java编写PalmOS程序的解决方案
- ››TimerTask与Timer使用示范
- ››简介DB2 9.5和IBM Data Studio
- ››简介Mysql中的临时表使用方法
更多精彩
赞助商链接