0
我试图运行这个测试 - 计算速度 - 这个对象类名为Point
与其中的一些方法。它的构造函数Point(String, double, double)
需要三个输入/变量。如何使用currentTimeMillis()在类上运行计算速度?
我有这个想法,但我似乎无法将它放在代码中:我想使用Math.random
在A和C之间创建一个随机数,将该数字放在一个变量中(对于这三个输入中的每一个)它创建一个对象数组,然后循环遍历数组,每次创建新的实例。
我在下面的代码是相当乱七八糟的,但任何帮助,将不胜感激。
public class Test{
long startTime = System.currentTimeMillis();
long total = 0;
for (int i = 0; i < 10000000; i++) {
total += i;
randomValue1 = (int)(Math.random()*10);
randomValue2 = (int)(Math.random()*10);
Point[] instances = new Point[numberOfElements];
for (int i=0; i<instances.length; i++) {
instances[i] = new Point(,randomValue1, randomValue2);
}
}
long stopTime = System.currentTimeMillis();
long elapsedTime = stopTime - startTime;
System.out.println(elapsedTime);
}
使用nanoTime的currentTimeMillis,您还需要通过运行10000次(根据我的理解)的方法来预热JIT以获得更好的结果 – MadProgrammer
大部分此代码似乎没有做你怎么看。例如'total'不用于任何事情,如果是的话,它将不会有用。每个点的随机值都是相同的。点是2D的,所以不清楚你会使用三个值。大部分时间将用于创建对象并生成随机值。 –