Numeric Literals
Java 7 provides the facility to use underscore in numeric literals like int, byte, short, float, long, double. We can use any number of underscore characters (_) between digits in a numerical literal. It helps to improve the code readability.
Note:
- Underscores cannot be put at the end of literal. So 12_ is invalid and cause compile time error.
- When we place underscore in the front of a numeric literal, it’s treated as an identifier and not a numeric literal.
Java numeric literals with underscore example
package com.w3schools; public class Java7UnderscoreInNumericLiteral { public static void main(String args[]){ //Underscore in integral literal int a = 10_000; System.out.println("a = "+a); //Underscore in floating literal float b = 30.5_000f; System.out.println("b = "+b); //Underscore in binary literal int c = 0B10_10; System.out.println("c = "+c); //Underscore in hexadecimal literal int d = 0x1_1; System.out.println("d = "+d); //Underscore in octal literal int e = 01_1; System.out.println("e = "+e); } }
Output
a = 10000 b = 30.5 c = 10 d = 17 e = 9