黑马程序员技术交流社区

标题: ava.util包中的Date类和Calendar类有什么实质的区别?? [打印本页]

作者: life55    时间: 2016-1-28 15:25
标题: ava.util包中的Date类和Calendar类有什么实质的区别??
今天学了这两个类,感觉功能差不多啊!而且calendar用起来比较麻烦.知道的说说

作者: 参禅悟道    时间: 2016-1-28 15:35
不能说,有什么区别!应该说一开始java用的是Date,但是后来发现很多问题,用起来也不方便,从后来的版本中,又重新定义了一个calendar,功能更丰富,方法更好用,在国际上更方便。
你去看看JDK API 里面的介绍就明白了:
在 JDK 1.1 之前,类 Date 有两个其他的函数。它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和解析日期字符串。不过,这些函数的 API 不易于实现国际化。从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和解析日期字符串。Date 中的相应方法已废弃。
作者: life55    时间: 2016-1-28 15:43
参禅悟道 发表于 2016-1-28 15:35
不能说,有什么区别!应该说一开始java用的是Date,但是后来发现很多问题,用起来也不方便,从后来的版本中 ...

看过API,可是date还保留了一些,就比如获取当前时间,date不是比calendar简单吗?Date d = new Date();就 可以获取
作者: 参禅悟道    时间: 2016-1-28 15:54
life55 发表于 2016-1-28 15:43
看过API,可是date还保留了一些,就比如获取当前时间,date不是比calendar简单吗?Date d = new Date();就 可 ...

calendar里面有一个静态方法getInstance() ,这个方法名称多么的明确获取一个示例,并且不用new一个对象。我倒觉得这样的代码更清晰,更方便。
作者: life55    时间: 2016-1-28 16:03
参禅悟道 发表于 2016-1-28 15:54
calendar里面有一个静态方法getInstance() ,这个方法名称多么的明确获取一个示例,并且不用new一个对象 ...

确实是,现在发现calendar获取日期能直接获取到中文意思的,而date要先格式化,再转换为字符串.谢谢你的解答啦
作者: 梁志斌    时间: 2016-1-29 02:16
日历类比日期类爽,日历类很多东西可以直接弄出来,日期类要用format套格式,而且那个格式真的日了狗,什么HHssMMDDYYddSS的
作者: life55    时间: 2016-1-30 21:10
梁志斌 发表于 2016-1-29 02:16
日历类比日期类爽,日历类很多东西可以直接弄出来,日期类要用format套格式,而且那个格式真的日了狗,什么 ...

哈哈   说的也是




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2