Java Program to use Underscores in Numeric Literal

This is a Java Program to Use Underscores in Numeric Literal. A literal is an explicit value.
For example : int number=123;
The value 123 is a literal. Since it’s a normal base-10 value, we might say it is a decimal literal.

We have used underscore at various positions in different types of datatype values and identified which of them are valid and which are not.

Here is the source code of the Java Program to Use Underscores in Numeric Literal. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.

  1. import java.util.Scanner;
  2. public class Underscore_Numeric 
  3. {
  4.     public static void main(String[] args) 
  5.     {
  6.         //  int a1 = _52;                   Invalid; cannot put underscores at the start of a literal
  7.             int a2 = 5_2;                // OK (decimal literal)
  8.             System.out.println(a2);
  9.         //  int a3 = 52_;                   Invalid; cannot put underscores at the end of a literal
  10.             int a4 = 5_______2;          // OK (decimal literal)
  11.             System.out.println(a4);
  12.         //  int a5 = 0_x52;                 Invalid; cannot put underscores in the 0x radix prefix
  13.         //  int a6 = 0x_52;                 Invalid; cannot put underscores at the beginning of a number
  14.             int a7 = 0x5_2;              // OK (hexadecimal literal)
  15.             System.out.println(a7);
  16.         //  int a8 = 0x52_;                 Invalid; cannot put underscores at the end of a number
  17.             int a9 = 0_52;               // OK (octal literal)
  18.             System.out.println(a9);
  19.             int a10 = 05_2;              // OK (octal literal)
  20.             System.out.println(a10);
  21.         //  int a11 = 052_;                 Invalid; cannot put underscores at the end of a number
  22.         //  float b1 = 3_.1415F;            Invalid; cannot put underscores adjacent to a decimal point
  23.         //  float b2 = 3._1415F;            Invalid; cannot put underscores adjacent to a decimal point
  24.             float b3 = 3.1_415F;         // OK (float literal)
  25.             System.out.println(b3);
  26.         //  long c1 = 9999_L;                Invalid; cannot put underscores prior to an L suffix
  27.             long c2 = 99_99L;             // OK (long literal)
  28.             System.out.println(c2);
  29.     }
  30. }

Output:

$ javac Underscore_Numeric.java
$ java Underscore_Numeric
 
52
52
82
42
42
3.1415
9999

Sanfoundry Global Education & Learning Series – 1000 Java Programs.

advertisement
advertisement

Here’s the list of Best Books in Java Programming, Data Structures and Algorithms.

If you find any mistake above, kindly email to [email protected]

advertisement
advertisement
Subscribe to our Newsletters (Subject-wise). Participate in the Sanfoundry Certification contest to get free Certificate of Merit. Join our social networks below and stay updated with latest contests, videos, internships and jobs!

Youtube | Telegram | LinkedIn | Instagram | Facebook | Twitter | Pinterest
Manish Bhojasia - Founder & CTO at Sanfoundry
Manish Bhojasia, a technology veteran with 20+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.

Subscribe to his free Masterclasses at Youtube & discussions at Telegram SanfoundryClasses.