Java Language Utiliser le soulignement pour améliorer la lisibilité


Exemple

Depuis Java 7, il est possible d'utiliser un ou plusieurs traits de soulignement (_) pour séparer des groupes de chiffres dans un littéral de nombre primitif afin d'améliorer leur lisibilité.

Par exemple, ces deux déclarations sont équivalentes:

Java SE 7
int i1 = 123456;
int i2 = 123_456;
System.out.println(i1 == i2); // true

Cela peut être appliqué à tous les littéraux de nombres primitifs comme indiqué ci-dessous:

Java SE 7
byte color = 1_2_3;
short yearsAnnoDomini= 2_016;
int socialSecurtyNumber = 999_99_9999;
long creditCardNumber = 1234_5678_9012_3456L;
float piFourDecimals =  3.14_15F;
double piTenDecimals =  3.14_15_92_65_35;

Cela fonctionne également en utilisant des préfixes pour les bases binaires, octales et hexadécimales:

Java SE 7
short binary= 0b0_1_0_1;
int octal = 07_7_7_7_7_7_7_7_0;
long hexBytes = 0xFF_EC_DE_5E;

Il y a quelques règles sur les soulignés qui interdisent leur placement dans les endroits suivants:

  • Au début ou à la fin d'un nombre (par exemple, _123 ou 123_ ne sont pas valides)
  • Adjacent à un point décimal dans un littéral à virgule flottante (par exemple, 1._23 ou 1_.23 ne sont pas valides)
  • Avant un suffixe F ou L (par exemple, 1.23_F ou 9999999_L ne sont pas valides)
  • Dans les positions où une chaîne de chiffres est attendue (par exemple, 0_xFFFF n'est pas valide)