`
shukuiyan
  • 浏览: 413246 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

System.nanoTime()与System.currentTimeMillis

    博客分类:
  • java
阅读更多

平时产生随机数时我们经常拿时间做种子,比如用System.currentTimeMillis的结果,但是在执行一些循环中使用了System.currentTimeMillis,那么每次的结果将会差别很小,甚至一样,因为现代的计算机运行速度很快。后来看到java中产生随机数函数以及线程池中的一些函数使用的都是System.nanoTime,下面说一下这2个方法的具体区别。

 System.nanoTime提供相对精确的计时,但是不能用他来计算当前日期,

返回最准确的可用系统计时器的当前值,以毫微秒(纳秒 )为单位。

纳秒 
  ns(nanosecond):纳秒, 时间单位。一秒的10亿分之一,即等于10的负9次方秒。常用作 内存读写速度的单位。 
  1纳秒=0.000001 毫秒 
  1纳秒=0.00000 0001秒 

 

System.currentTimeMillis返回的是从1970.1.1 UTC 零点开始到现在的时间,精确到毫秒,平时我们可以根据System.currentTimeMillis来计算当前日期,星期几等,可以方便的与Date进行转换

返回以毫秒为单位的当前时间

 

 

http://blog.csdn.net/dliyuedong/article/details/8806868

 

 

 

分享到:
评论

相关推荐

    android时间戳总结:System.nanoTime(),System.currentTimeMillis(),SystemClock

    System.nanoTime() System.currentTimeMillis() SystemClock.uptimeMillis() SystemClock.elapsedRealtime() SystemClock.currentThreadTimeMillis 0、时间的单位: 秒:second 毫秒:Millisecond 微妙:Microsecond...

    System.currentTimeMillis() 和 System.nanoTime() 哪个更快?大

    互联网资讯,技术简介,IT、AI技术,人工智能互联网资讯,技术简介,IT、AI技术,人工智能互联网资讯,技术简介,IT、AI技术,人工智能互联网资讯,技术简介,IT、AI技术,人工智能互联网资讯,技术简介,IT、AI技术...

    Java中获取比毫秒更精确的时间.docx

    为了解决 `System.currentTimeMillis()` 的局限性,Java 提供了 `System.nanoTime()` 方法来获取比毫秒更精确的时间。该方法返回自某个固定点以来的纳秒数,通常用于测量时间差,而不是绝对时间。需要注意的是,虽然...

    java 记录程序执行的时间

    `System.currentTimeMillis()`适合简单场景,`System.nanoTime()`与`TimeUnit`组合提供更高精度,而第三方库如Guava的`Stopwatch`则提供了更友好的API。对于性能敏感的代码,推荐使用专业的性能测试工具和框架进行...

    Java计算程序代码执行时间的方法小结

    Java 计算程序代码执行时间的方法可以使用 System.currentTimeMillis() 方法和 System.nanoTime() 方法来记录程序的开始和结束时间,从而计算出程序的执行时间。这些方法对于排查性能问题、优化代码执行效率和 debug...

    miaobiao.rar_java 秒表

    在Java中,我们可以使用内置的`System.currentTimeMillis()`或`System.nanoTime()`方法来创建一个简单的秒表功能。本项目名为“miaobiao.rar”,提供了一个用于学习的Java秒表程序,该程序不仅实现了基本的计时功能...

    测试时间的算法

    总结起来,Java提供了多种工具和方法来测试代码的执行时间,包括`System.currentTimeMillis()`、`System.nanoTime()`、`TimeUnit`以及`Thread.sleep()`等。开发者可以根据具体需求选择合适的方式,对代码进行性能...

    momomo.com.platform.Nanotime:从Java Runtime要求时间时允许更高的精度。 即纳秒精度

    在Java中,`System.currentTimeMillis()`返回的是自1970年1月1日00:00:00 GMT以来的毫秒数,而`nanoTime()`方法虽然返回的是自某个不确定的起点以来的纳秒数,但这个值并不适合直接用来计算时间差,因为它并不与`...

    java计时器

    Java 8引入了`System.nanoTime()`方法,它可以提供纳秒级别的计时,相比`System.currentTimeMillis()`更加精确。 ```java public long startTime = System.nanoTime(); // 执行待测代码 public long endTime = ...

    用java编写的计时器

    根据提供的代码片段,我们可以看到三种不同的计时器实现方法:使用`java.util.Date`、`System.currentTimeMillis()`以及`System.nanoTime()`。下面将分别介绍这三种方法的特点和应用场景。 #### 三、使用`java.util...

    System Lambda是一个函数集合,用于测试使用javalangSystem的代码.zip

    3. **系统时间(System.currentTimeMillis(), System.nanoTime())**:在某些测试中,需要固定或者精确控制时间。System Lambda 可以提供预设的时间值,避免因为系统时间的变化导致测试结果不一致。 4. **安全退出...

    Java简单计时的实现案例(可以用来限时循环)

    总结来说,Java提供了多种计时工具,如`System.currentTimeMillis()`、`Date`类以及`System.nanoTime()`,可以根据实际需求选择合适的计时方法。在实现限时循环时,可以结合这些方法控制循环的执行时间,确保程序...

    Stopwatch

    然而,对于简单的计时操作,我们通常不需要这么复杂的结构,因此 `System.nanoTime()` 或 `System.currentTimeMillis()` 函数更为常用。 ### 二、使用 `System.nanoTime()` 实现 Stopwatch 由于 Kotlin 标准库中并...

    Java程序执行时间的2种简单方法

    总结来说,当需要测量Java程序执行时间时,`System.currentTimeMillis()` 是一种简单且适用于大多数场景的方法,而`System.nanoTime()` 则适用于对性能敏感的微基准测试,它提供了更高的精度但不适用于长时间间隔的...

    Java计算两个程序运行时间的实例

    首先,我们来看第一种方法,即通过`System.currentTimeMillis()`方法来获取程序的运行时间。这个方法返回的是自1970年1月1日00:00:00 GMT以来的毫秒数。下面是一个简单的示例: ```java public class Main { ...

    毫秒级倒计时+listview

    在Java或Android中,我们可以使用`System.currentTimeMillis()`或者`System.nanoTime()`来获取当前时间戳,但这两个方法并不能直接提供毫秒级的精确度。为达到毫秒级倒计时,我们需要结合`System.nanoTime()`和`...

    java.lang.System类.pdf

    Java中的`java.lang.System`类是Java核心库中不可或缺的一部分,它是系统级操作的主要入口点。这个类提供了很多静态字段和...理解并熟练使用`System`类的各种方法,可以帮助开发者更好地操控Java程序与系统资源的交互。

    安卓Android源码——秒表源码.zip

    在Android中,可以使用`System.currentTimeMillis()`或`System.nanoTime()`方法获取当前时间,但前者精度为毫秒,后者为纳秒,适用于更精确的计时需求。 2. **Handler与Message机制**: Android中的计时器常利用`...

    秒钟计时Android

    在后台线程中,我们需要用到`System.currentTimeMillis()`或`System.nanoTime()`来获取当前时间,然后计算出已过去的时间。为了精确计时,可以使用`System.nanoTime()`,但要注意其单位为纳秒,需要转换为毫秒。...

    java统计方法执行时长

    首先,我们可以使用Java内置的`System.currentTimeMillis()`或`nanoTime()`方法来获取当前时间点,以此作为计时起点。在方法执行完毕后,再获取一次当前时间,通过两者之差计算出方法的执行时间。例如: ```java ...

Global site tag (gtag.js) - Google Analytics