Java Program to Convert Decimal to Hexadecimal

This post covers a program in Java that converts a decimal number entered by user at run-time of the program, to its equivalent hexadecimal value.

If you're not aware about, how the decimal to hexadecimal conversion takes place, then refer to Decimal to Hexadecimal Conversion.

Decimal to Hexadecimal Conversion in Java

The question is, write a Java program to convert decimal to hexadecimal. The decimal number must be received by user at run-time. The program given below is its answer:

import java.util.Scanner;

public class CodesCracker
{
   public static void main(String[] args)
   { 
      int decimal, rem, i=0;
      char[] hexadecimal = new char[20];
      
      Scanner scan = new Scanner(System.in);
      
      System.out.print("Enter the Decimal Number: ");
      decimal = scan.nextInt();
      
      while(decimal!=0)
      {
         rem = decimal%16;
         if(rem<10)
            rem = rem+48;
         else
            rem = rem+55;
         hexadecimal[i] = (char)rem;
         i++;
         decimal = decimal/16;
      }
      
      System.out.print("\nEquivalent Hexadecimal Value = ");
      for(i=(i-1); i>=0; i--)
         System.out.print(hexadecimal[i]);
   }
}

The snapshot given below shows the sample run of above program, with user input 540 as decimal number to convert and print its equivalent hexadecimal value:

java convert decimal to hexadecimal

The above program can also be created in this way:

import java.util.Scanner;

public class CodesCracker
{
   public static void main(String[] args)
   { 
      int decimal, rem;
      String hexadecimal="";
      char[] hexDigit = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
      
      Scanner scan = new Scanner(System.in);
      
      System.out.print("Enter the Decimal Number: ");
      decimal = scan.nextInt();
      
      while(decimal>0)
      {
         rem = decimal%16;
         hexadecimal = hexDigit[rem] + hexadecimal;
         decimal = decimal/16;
      }
      
      System.out.print("\nEquivalent Hexadecimal Value = " +hexadecimal);
   }
}

This program produces same output as of previous program.

Same Program in Other Languages

Java Online Test


« Previous Program Next Program »