Open In App

Numbers in Java (With 0 Prefix and with Strings)

Consider the following Java program.




import java.io.*;
class GFG
{
    public static void main (String[] args)
    {
        int x = 012;
        System.out.print(x);
    }
}

Output:

10

The reason for above output is, when a 0 is prefixed the value is considered octal, since 12 in octal is 10 in decimal, the result is 10. Similarly, if i = 0112, result will be 74 (in decimal). This behavior is same as C/C++ (see this).



Also,




import java.io.*;
class GFG
{
    public static void main (String[] args)
    {
        String s = 3 + 2 + "hello" + 6 + 4;
        System.out.print(s);
    }
}

Output :

5hello64

Java takes the numbers before the strings are introduced as int and once the string literals are introduced, all the following numbers are considered as strings.



Article Tags :