Java Program to Convert Binary to Hexadecimal

In this tutorial, we will write a Java Program to Convert a Binary Number to Hexadecimal Number. Before that, you must have knowledge of the following topics in java.

Binary number

The binary numbers are based on 0 and 1, so it is a base 2 number. They are the combination of 0 and 1. For example, 1001, 110101, etc.

Hexadecimal number

The hexadecimal number is represented with a base of 16. It has digits from 0 to 15 to represent, However after 9 the values are represented in Alphabet till 15 such as 10 is represented as A, 11 as B, 12 as C, 13 as D, 14 as E, and 15 as F.

Input: 11011111
Output: DF

Input: 10001101
Output: 8D

Now let us go through a program for Binary to hexadecimal conversion in java.


Java Program to Convert Binary to Hexadecimal using While loop

import java.util.Scanner;

public class Main
{
  public static void main(String[] args)
  {
    int[] hexaDecnum = new int[1000];
    int i = 1, j = 0, rem, decNum = 0, binary;

    Scanner in = new Scanner(System.in);

    System.out.print("Enter a Binary Number: ");
    binary = in .nextInt();

    while (binary > 0)
    {
      rem = binary % 2;
      decNum = decNum + rem * i;
      i = i * 2;
      binary /= 10;
    }

    i = 0;

    while (decNum != 0)
    {
      hexaDecnum[i] = decNum % 16;
      decNum = decNum / 16;
      i++;
    }

    System.out.print("Equivalent Hexadecimal value: ");
    for (j = i - 1; j >= 0; j--)
    {
      if (hexaDecnum[j] > 9)
        System.out.print((char)(hexaDecnum[j] + 55) + "\n");
      else
        System.out.print(hexaDecnum[j] + "\n");
    }
  }
}

Output:

Enter a Binary Number: 1010
Equivalent Hexadecimal value: A