I generated two matrices of
1000
x
1000
:
First
Matrix: O
and #
.
Second
Matrix: O
and
B
.
Using the following
code, the first matrix took 8.52 seconds to
complete:
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("");
}
With this code, the
second matrix took 259.152 seconds to
complete:
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("");
}
What
is the reason behind the dramatically different run
times?
As
suggested in the comments, printing only System.out.print("#");
takes 7.8871
seconds, whereas
System.out.print("B");
gives still
.
printing...
As others
who pointed out that it works for them normally, I tried rel="noreferrer">Ideone.com for instance, and both pieces of code execute
at the same speed.
Test
Conditions:
- I ran this
test from Netbeans 7.2, with the output into its
console - I used
System.nanoTime()
for measurements
No comments:
Post a Comment