A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© breaveheart 中级黑马   /  2013-8-6 17:26  /  1468 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 breaveheart 于 2013-8-6 18:15 编辑

毕老师的学习视频中,有一部分中间是有点没衔接上的,
所以有段代码没解释,附上代码请教大神。

  1. <P>
  2. import java.util.*;
  3. import java.text.*;
  4. class DateDemo
  5. {
  6. public static void main(String[] args)
  7. {
  8.   long l = System.currentTimeMillis();
  9.   Date d1 = new Date(l);
  10.   System.out.println("d1:"+d1);</P>
  11. <P>  Date d = new Date();
  12.   System.out.println("d:"+d);
  13. }
  14. }
  15. </P>
复制代码
我输出的时候两者的输出格式是完全一样的,那么 long l = System.currentTimeMillis();
并且把l传递到d1中的作用是什么呢?
有什么区别吗?

百度的解释是这样:
long currentTime = System.currentTimeMillis();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy年-MM月dd日-HH时mm分ss秒");
Date date = new Date(currentTime);
System.out.println(formatter.format(date));
运行结果如下:
当前时间:2011年-08月10日-14时11分46秒


但是我直接
Date date = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy年-MM月dd日-HH时mm分ss秒");
System.out.println(formatter.format(date));
的结果不是一样吗?那么多加一步
long currentTime = System.currentTimeMillis();
是不是多此一举了?

强调一下个人观点问题,
我想知道问题答案,去了解、学习JAVA,
请朋友们能够彼此尊重,
不要为了技术分而百度一些风马牛不相及的东西敷衍我。



评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

4 个回复

倒序浏览
本帖最后由 wang100753 于 2013-8-6 17:57 编辑


  long l = System.currentTimeMillis();

  Date d1 = new Date(l);

在java中的方法分为

(1)静态方法  直接使用  类名.方法名 调用
(2)普通方法  通过new创建对象  然后使用  对象.方法  调用

对象d1直接调用了(l)


评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

回复 使用道具 举报
wang100753 发表于 2013-8-6 17:32
Date的构造函数
1构造一个反映当时时间的Date实例
         Date

朋友,你可能没看清我的问题吧?你回答的不是我提的问题啊。
回复 使用道具 举报
breaveheart 发表于 2013-8-6 17:41
朋友,你可能没看清我的问题吧?你回答的不是我提的问题啊。

看错了,现在已经修改了。
回复 使用道具 举报
本帖最后由 breaveheart 于 2013-8-6 18:17 编辑
wang100753 发表于 2013-8-6 18:02
看错了,现在已经修改了。


long currentTime = System.currentTimeMillis();其实是关于这个的应用的问题
不太理解。。。   我百度到的结果不是很透彻。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马