Por que imprimir o caractere 'B' em um loop Java é muito mais lento do que imprimir o caractere '#'
Olá, colegas! Sou um desenvolvedor Java iniciante e me deparei com um problema muito estranho ao testar o desempenho de loops.
Escrevi um código simples que imprime 1000 caracteres no console. Primeiro, usei o caractere '#', e tudo funcionou rápido. Depois, substituí '#' por 'B' — e a velocidade de execução caiu várias vezes! Aqui está meu código:
```java
public class PrintTest {
public static void main(String[] args) {
long start = System.currentTimeMillis();
for (int i = 0; i < 1000; i++) {
System.out.print("B");
}
long end = System.currentTimeMillis();
System.out.println("\nTempo: " + (end - start) + " ms");
start = System.currentTimeMillis();
for (int i = 0; i < 1000; i++) {
System.out.print("#");
}
end = System.currentTimeMillis();
System.out.println("\nTempo: " + (end - start) + " ms");
}
}
```
No meu notebook (Windows 10, Java 11), imprimir 'B' leva