System.currentTimeMillis() - 864000000什么意思
时间: 2023-12-09 08:34:16 浏览: 31
`System.currentTimeMillis()`返回的是当前时间与GMT时间1970年1月1号0时0分0秒所差的毫秒数。而`864000000`代表的是一天的毫秒数,即24小时*60分钟*60秒*1000毫秒。因此,`System.currentTimeMillis() - 864000000`的意思是当前时间减去一天的毫秒数,即得到一天前的时间的毫秒数。
以下是一个示例代码,演示了如何使用`System.currentTimeMillis()`和`864000000`计算一天前的时间的毫秒数:
```java
long oneDayAgo = System.currentTimeMillis() - 864000000;
System.out.println("One day ago in milliseconds: " + oneDayAgo);
```
相关问题
System.currentTimeMillis() 有什么问题
System.currentTimeMillis()方法在获取当前时间的时候,会受到系统时间被修改的影响,从而导致获取到的时间不准确。此外,在高并发的情况下,频繁调用System.currentTimeMillis()方法也会对程序的性能产生一定的影响。
如果需要获取更加准确的时间,可以使用System.nanoTime()方法,该方法返回的是当前时间与Java虚拟机启动时间之间的时间差,单位为纳秒。需要注意的是,System.nanoTime()方法的精度和可用性可能因操作系统和硬件的不同而有所差异。
另外,如果需要在多线程环境下获取时间,可以使用ThreadLocalRandom.current().nextInt()方法,该方法返回的是当前线程的随机数生成器的下一个伪随机数,可以用来代替System.currentTimeMillis()方法。
System.currentTimeMillis()作用是什么
System.currentTimeMillis()方法用于获取当前时间距离1970年1月1日00:00:00的毫秒数。它返回一个long类型的值,表示从1970年1月1日到当前时间的毫秒数。这个方法在计算程序的执行时间、计时等方面非常有用。
以下是一个使用System.currentTimeMillis()方法计算程序执行时间的例子:
```java
long start = System.currentTimeMillis();
// 执行一些代码
long end = System.currentTimeMillis();
long executionTime = end - start;
System.out.println("程序执行时间:" + executionTime + "毫秒");
```
这段代码会输出程序的执行时间,单位为毫秒。