测量代码的执行时间对于优化Java应用程序的性能至关重要,它帮助开发者识别瓶颈并提高效率,本条探讨了计算执行时间的常用方法,提供了实用的例子.

使用 System.nanoTime () 自动调试

System.nanoTime () 方法提供了高分辨率时间测量。它返回最精确的可用系统定时器的当前值,以纳秒计时。要测量执行时间,请记录代码运行之前的起始时间和之后的结束时间。差额表示已过期时间。

示例

长起始时间=system.nanoTime();

// 测量的代码]

长尾时间=system.nanoTime();

长 = 结束时间 - start Time; ]

使用 System.centrontimeMillis () 自动调制

system.centralTimeMillis () 方法以毫秒提供当前时间,它比 更精确,但适合测量更长的长度,与前一种方法类似,在代码块周围记录起始和结束时间.

示例

长起始时间=system.centronimMillis ();

// 测量的代码]

长尾时间=system.centronimMillis ();

长 = 结束时间 - start Time; ]

使用 Java 的即时类

]来自java.time包的即时类提供了一种现代的时间测量方法,提供了纳秒精度,适合测量持续时间.

示例

即时启动 = instant.now();]

// 测量的代码]

即时端=即时.now();]

期限=期限。在(开始、结束)之间;]

现实世界实例

假设您想要测量一个大阵列的排序需要多长时间。 您可以使用 [[FLT: 0]] system.nanoTime () [[FLT: 1] 执行以下内容:

int [] 数组 = 新英寸 [1 000 000]; ]

// 填充数组]

长起始时间=system.nanoTime();

Arrays.sort(阵列);]

长尾时间=system.nanoTime();

system.out.println("吸食")+(末-起始时间)+"纳秒";]