2014-05-19 23 views
5

È possibile utilizzare caratteri di sottolineatura in numeri in Java? Ho visto questo codice in un blog e funziona, ma continuerà a funzionare in futuro? È una caratteristica o un bug?I caratteri di sottolineatura sono consentiti in letterali numerici in Java?

long oneBillion = 1_000_000_000L; 
+0

Non consentito fino a JAVA 6 .... – Braj

+0

@GriffeyDog Grazie, ho corretto. – Braj

+1

@Braj No, [aggiunto in Java 7] (https://docs.oracle.com/javase/7/docs/technotes/guides/language/underscores-literals.html) (non 6). –

risposta

6

E 'una caratteristica, nuova in Java 7. Si può fare affidamento su di essa rimanenti. Ci sono alcune restrizioni, però; vedi the documentation.

+0

+1 '_1' è ancora una variabile. ;) –

1

Java 7 supporta la funzionalità di avere caratteri di sottolineatura nei valori letterali numerici per migliorare la leggibilità dei valori assegnati.

ma l'utilizzo del carattere di sottolineatura è limitato per essere tra due cifre numeriche, cioè non all'inizio o alla fine dei valori numerici ma deve essere limitato tra due cifre, non deve essere come prefisso a l, f utilizzato per rappresentare anche i valori long e float e non tra i prefissi dei prefissi.

0

tl; dr

Potete usare sottolineature in numeri in Java?

Sì.

Utilizzare in letterali numerici: int, long, float, double e more per raggruppare le cifre come desiderato.

Funziona con notazione binaria, decimale, ottale e esadecimale.

continuerà a funzionare in futuro?

Sì.

Funziona in Java 7, Java 8, Java 9 e versioni successive.

È una funzionalità o un bug?

Caratteristica.

dettagli

Sì, si sta utilizzando un feature added in Java 7, e proseguito in Java e Java 8 9.

È possibile utilizzare un trattino tra le cifre. Puoi anche utilizzare un gruppo di trattini bassi multipli tra cifre, se lo desideri. Puoi usarli su numeri interi (interi) e su numeri frazionari (float, double). In un numero frazionario, è possibile utilizzarli su uno o entrambi i lati del punto decimale.

È possibile utilizzarli in numeri esadecimali (base 16), binari (base 2) e ottali (base 8) e numeri base 10.

È possibile raggruppare qualsiasi numero di cifre come si ritiene opportuno.

Lo scopo è rigorosamente leggibile da per l'uomo. Java non vede alcun significato nei caratteri di sottolineatura. La presenza o l'assenza dei caratteri di sottolineatura in un valore letterale numerico ha l'effetto no sul codice.

Leggi this half-page of documentation per vedere alcuni esempi utili di utilizzo corretto e sbagliato.

Problemi correlati