Pourquoi l'affichage du caractère 'B' dans une boucle Java est beaucoup plus lent que l'affichage du caractère '#'
Bonjour, collègues ! Je suis un développeur Java débutant et j'ai rencontré un problème très étrange lors du test de performance des boucles.
J'ai écrit un code simple qui affiche 1000 caractères dans la console. J'ai d'abord utilisé le caractère '#', et tout fonctionnait rapidement. Ensuite, j'ai remplacé '#' par 'B' — et la vitesse d'exécution a chuté de plusieurs fois ! Voici mon code :
```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("\nTemps : " + (end - start) + " ms");
start = System.currentTimeMillis();
for (int i = 0; i < 1000; i++) {
System.out.print("#");
}
end = System.currentTimeMillis();
System.out.println("\nTemps : " + (end - start) + " ms");
}
}
```
Sur mon ordinateur portable (Windows 10, Java 11), l'affichage de 'B' prend