# Java convert decimal to hex

Let’s learn java convert decimal to hex.

## Java convert decimal to hex

decimal to hexadecimal in java is one of the common java interview question. In number system, decimal number has a base of ten and has digits from 0 to 9.

Whereas hexadecimal number has a base 16 and has digits from 0 to 9 and A to F. Now let’s see the comparison through a table.

As you can see in the above table, from 0 to 9 numbers are same in both number system.

After number 9, 10 is denoted as ‘A’, 11 is denoted as ‘B’, 12 is denoted as ‘C’, 13 is denoted as ‘D’, 14 is denoted as ‘E’, 15 is denoted as ‘F’ in hexadecimal system. Here’s java program to convert decimal to hex.

```import java.util.Scanner;
public class DecimalToHexaExample
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int decimal = sc.nextInt();
while(decimal != 0)
{
int hexNumber = decimal % 16;
char charHex;
if(hexNumber <= 9 && hexNumber >= 0)
{
charHex = (char)(hexNumber + '0');
}
else
{
charHex = (char)(hexNumber - 10 + 'A');
}
decimal = decimal / 16;
}
sc.close();
}
}

```

Output:

Let’s learn two more ways to convert decimal to hexadecimal.

• using Integer.toHexString() method this method returns string representation of the unsigned integer value represented by the argument in hexadecimal (base 16).
• without using predefined method.

Convert decimal number to hexadecimal number using Integer.toHexString() method.

```import java.util.Scanner;
public class DecimalToHexaExample
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int decimalNumber = sc.nextInt();
String str = Integer.toHexString(decimalNumber);
System.out.println("The hexadecimal value is: " + str);
sc.close();
}
}

```

Output:

### decimal to hex – without using predefined method

Let’s see java decimal to hex conversion without using predefined method.

```import java.util.Scanner;
{
public static void main(String[] args)
{
int temp, decimalNumber;
char[] hexa = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
Scanner sc = new Scanner(System.in);
decimalNumber = sc.nextInt();
while(decimalNumber > 0)
{
temp = decimalNumber % 16;
decimalNumber = decimalNumber / 16;
}
sc.close();
}
}

```

Output: