首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

关于用SimpleDateFormat进行日期格式化的有关问题

2012-12-23 
关于用SimpleDateFormat进行日期格式化的问题??? 做了遮掩一个实验:public static void main(String[] arg

关于用SimpleDateFormat进行日期格式化的问题

??? 做了遮掩一个实验:

public static void main(String[] args) {long currentTime = System.currentTimeMillis();int timestamp = (int) (currentTime / 1000);System.out.println(currentTime);System.out.println((long)timestamp*1000);SimpleDateFormat dt=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");System.out.println(dt.format(new java.util.Date(currentTime)));System.out.println(dt.format(new java.util.Date((long)timestamp*1000)));}

?

做完以后输出是这样的:

130163625578813016362550002011-04-01 13:37:352011-04-01 13:37:35

?于是就奇怪了,最后new Date()里面的时间不相同,为什么格式化以后的日期却是相同的呢?

在群里面问了一下,答案是这样的:

?? 格式化的时候输入到秒,而两个时间只相差858毫秒,还不到一秒呢,也就是说你SimpeDateFormat里面的那个pattern只是精确到秒,所以就出现了上面那种情况,当二者相差不到1秒的时候,格式化出来当然就相同了。

热点排行