我正在尝试记录将特定数量的字符串入队和出队到链表队列所花费的时间。
如果我手动设置字符串的数量,则每次运行程序时都会返回或多或少相同的经过时间。
但是,如果我要求用户输入(如下所示),并输入相同的数字,则程序运行大多数时间需要两倍的时间。我不明白这是怎么发生的,因为直到调用排队和出队函数之前我才启动计时器。
public static void main(String[], args){
long start, elapsed;
int num = Integer.parseInt(javax.swing.JOptionPane.showInputDialog("State the number of elements to queue:"));
System.out.println("Processing " + num + " strings...");
Queue lq = new LinkedQueue();
// timing section
start = System.nanoTime();
testQueue(num, lq);
elapsedTime = System.nanoTime() - start;
}
有谁知道为什么会这样?