有一段代码中这样写System.currentTimeMillis() - 360000l * 24 * 140计算的本意是减去140天的时间段,可是正常应该是减去3600000 * 24 *140才对的。在下是在不明白为什么是写360000而不是3600000
8 个解决方案
#1
#2
呵呵,可能是写漏了吧,应该是1毫秒为单位的
#3
看了下jdk,这样说的
返回以毫秒为单位的当前时间。注意,当返回值的时间单位是毫秒时,值的粒度取决于底层操作系统,并且粒度可能更大。例如,许多操作系统以几十毫秒为单位测量时间。
返回以毫秒为单位的当前时间。注意,当返回值的时间单位是毫秒时,值的粒度取决于底层操作系统,并且粒度可能更大。例如,许多操作系统以几十毫秒为单位测量时间。
#4
正确的应该是
System.currentTimeMillis() - 3600000L * 24L * 140L
System.currentTimeMillis() - 3600000L * 24L * 140L
#5
这样也才
System.currentTimeMillis() - 3600000L * 24 * 140
System.currentTimeMillis() - 3600000L * 24 * 140
#6
以下是几种运行结果,自己算算哪个对
Date date = new Date(System.currentTimeMillis() - 3600000L * 24 * 140);
System.out.println(date);
//运行结果:Thu Feb 14 16:20:08 CST 2008
Date date = new Date(System.currentTimeMillis() - 360000L * 24 * 140);
System.out.println(date);
//运行结果:Thu Jun 19 16:22:31 CST 2008
Date date = new Date(System.currentTimeMillis() - 3600000 * 24 * 140);
System.out.println(date);
//运行结果:Sat Jul 12 19:31:11 CST 2008
#7
越减越多了。。。
#8
呵呵,谢了,哎,等我发完帖才想起来。用Date一算便知道了。郁闷,呵呵,看来自己需要学的真的是很多啊。小弟在此多谢了。
#1
#2
呵呵,可能是写漏了吧,应该是1毫秒为单位的
#3
看了下jdk,这样说的
返回以毫秒为单位的当前时间。注意,当返回值的时间单位是毫秒时,值的粒度取决于底层操作系统,并且粒度可能更大。例如,许多操作系统以几十毫秒为单位测量时间。
返回以毫秒为单位的当前时间。注意,当返回值的时间单位是毫秒时,值的粒度取决于底层操作系统,并且粒度可能更大。例如,许多操作系统以几十毫秒为单位测量时间。
#4
正确的应该是
System.currentTimeMillis() - 3600000L * 24L * 140L
System.currentTimeMillis() - 3600000L * 24L * 140L
#5
这样也才
System.currentTimeMillis() - 3600000L * 24 * 140
System.currentTimeMillis() - 3600000L * 24 * 140
#6
以下是几种运行结果,自己算算哪个对
Date date = new Date(System.currentTimeMillis() - 3600000L * 24 * 140);
System.out.println(date);
//运行结果:Thu Feb 14 16:20:08 CST 2008
Date date = new Date(System.currentTimeMillis() - 360000L * 24 * 140);
System.out.println(date);
//运行结果:Thu Jun 19 16:22:31 CST 2008
Date date = new Date(System.currentTimeMillis() - 3600000 * 24 * 140);
System.out.println(date);
//运行结果:Sat Jul 12 19:31:11 CST 2008
#7
越减越多了。。。
#8
呵呵,谢了,哎,等我发完帖才想起来。用Date一算便知道了。郁闷,呵呵,看来自己需要学的真的是很多啊。小弟在此多谢了。