我生成了1000
x的两个矩阵1000
:
第一矩阵:O
和#
。
第二矩阵:O
和B
。
使用以下代码,第一个矩阵花费了8.52秒完成:
Random r = new Random();
for (int i = 0; i < 1000; i++) {
for (int j = 0; j < 1000; j++) {
if(r.nextInt(4) == 0) {
System.out.print("O");
} else {
System.out.print("#");
}
}
System.out.println("");
}
使用此代码,第二个矩阵花费了259.152秒来完成:
Random r = new Random();
for (int i = 0; i < 1000; i++) {
for (int j = 0; j < 1000; j++) {
if(r.nextInt(4) == 0) {
System.out.print("O");
} else {
System.out.print("B"); //only line changed
}
}
System.out.println("");
}
运行时间显着不同的原因是什么?
正如评论所说,仅打印System.out.print("#");
需要7.8871
秒,而System.out.print("B");
给still printing...
。
正如其他指出它对他们正常工作的人一样,例如,我尝试了Ideone.com,这两段代码以相同的速度执行。
测试条件:
- 我从Netbeans 7.2运行了此测试,并将输出输出到其控制台中
- 我用来
System.nanoTime()
测量