Java Program for Decimal to Binary Conversion - GeeksforGeeks

17 Oct, 2021
Given a decimal number as input, we need to write a program to convert the given decimal number into an equivalent binary number.
Examples: 
Input : 7
Output : 111
s
Input : 10
Output : 1010

Input: 33
Output: 100001
Binary to decimal conversion is done to convert a number given in the binary system to its equivalent in the decimal number system. A number system is a format to represent numbers in a certain way. 
Binary Number System – The binary number system is used in computers and electronic systems to represent data, and it consists of only two digits which are 0 and 1. 
Decimal Number System – The decimal number system is the most commonly used number system worldwide, which is easily understandable to people. It consists of digits from 0 to 9.
There are numerous approaches to convert the given decimal number into an equivalent binary number in Java. A few of them are listed below.
Using Arrays
Using Bitwise Operators
Using Math.pow() Function (Without using arrays)
Store the remainder when the number is divided by 2 in an array.Divide the number by 2Repeat the above two steps until the number is greater than zero.Print the array in reverse order now.
Store the remainder when the number is divided by 2 in an array.
Divide the number by 2
Repeat the above two steps until the number is greater than zero.
Print the array in reverse order now.
The below diagram shows an example of converting the decimal number 17 to an equivalent binary number. 
Java
// Java program to convert a decimal// number to binary numberimport java.io.*;  class GFG {    // function to convert decimal to binary    static void decToBinary(int n)    {        // array to store binary number        int[] binaryNum = new int[1000];           // counter for binary array        int i = 0;        while (n > 0)         {            // storing remainder in binary array            binaryNum[i] = n % 2;            n = n / 2;            i++;        }           // printing binary array in reverse order        for (int j = i - 1; j >= 0; j--)            System.out.print(binaryNum[j]);    }          // driver program    public static void main (String[] args)     {        int n = 17;          System.out.println("Decimal - " + n);        System.out.print("Binary - ");          decToBinary(n);    }}  // Contributed by Pramod Kumar
Decimal - 17
Binary - 10001
We can use bitwise operators to do the above job. 
Note – Bitwise operators work faster than arithmetic operators used above.
Java
// Java program to Decimal to binary conversion// using bitwise operator// Size of an integer is assumed to be 32 bits  class gfg {    // Function that convert Decimal to binary    public void decToBinary(int n)    {        // Size of an integer is assumed to be 32 bits        for (int i = 31; i >= 0; i--) {            int k = n >> i;            if ((k & 1) > 0)                System.out.print("1");            else                System.out.print("0");        }    }}  class geek {    // driver code    public static void main(String[] args)    {        gfg g = new gfg();        int n = 32;          System.out.println("Decimal - " + n);         System.out.print("Binary - ");        g.decToBinary(n);    }}// This code is contributed by mits
Decimal - 32
Binary - 00000000000000000000000000100000
Decimal to binary conversion can also be done without using arrays. 
Java
// Java implementation of the approachimport java.io.*;  class GFG {      // Function to return the binary    // equivalent of decimal value N    static int decimalToBinary(int N)    {          // To store the binary number        int B_Number = 0;        int cnt = 0;        while (N != 0) {            int rem = N % 2;            double c = Math.pow(10, cnt);            B_Number += rem * c;            N /= 2;              // Count used to store exponent value            cnt++;        }          return B_Number;    }      // Driver code    public static void main(String[] args)    {          int N = 17;          System.out.println("Decimal - " + N);          System.out.print("Binary - ");        System.out.println(decimalToBinary(N));    }}  // This code is contributed by ajit.
Decimal - 17
Binary - 10001
Please refer complete article on Program for Decimal to Binary Conversion for more details!
nishkarshgandhi
Java
Java Programs
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Stream In Java
Object Oriented Programming (OOPs) Concept in Java
HashMap in Java with Examples
Interfaces in Java
How to iterate any Map in Java
Initializing a List in Java
Convert a String to Character Array in Java
Java Programming Examples
Convert Double to Integer in Java
Implementing a Linked List in Java using Class