Java Program For Decimal to Hexadecimal Conversion

25 Apr, 2022
Given a decimal number N, convert N into an equivalent hexadecimal number i.e convert the number with base value 10 to base value 16. The decimal number system uses 10 digits 0-9 and the Hexadecimal number system uses 0-9, A-F to represent any numeric value.
Examples: 
Input : 10Output: A
Input : 2545Output: 9F1
Approach:
Store the remainder when the number is divided by 16 in an array.Divide the number by 16 nowRepeat the above two steps until the number is not equal to 0.Print the array in reverse order now.
Store the remainder when the number is divided by 16 in an array.
Divide the number by 16 now
Repeat the above two steps until the number is not equal to 0.
Print the array in reverse order now.
Below is the implementation of the above approach:
Java
// Java program to convert Decimal Number// to Hexadecimal Number // Importing input output classesimport java.io.*; // Main classpublic class GFG {     // Method 1    // To convert decimal to hexadecimal    static void decTohex(int n)    {        // Creating an array to store octal number        int[] hexNum = new int[100];         // counter for hexadecimal number array        int i = 0;        while (n != 0) {             // Storing remainder in hexadecimal array            hexNum[i] = n % 16;            n = n / 16;            i++;        }         // Printing hexadecimal number array        // in the reverse order        for (int j = i - 1; j >= 0; j--) {            if (hexNum[j] > 9)                System.out.print((char)(55 + hexNum[j]));            else                System.out.print(hexNum[j]);        }    }     // Method 2    // Main driver method    public static void main(String[] args)    {        // Custom input decimal number        // to be converted into hexadecimal number        int n = 2545;         // Calling the above Method1 over number 'n'        // to convert this decimal into hexadecimal number        decTohex(n);    }}
9F1
Time Complexity: O(log N)Auxiliary Space: O(1)
Another method (using a built-in function): The java.lang.Integer.toString(int a, int base) is an inbuilt method in Java that is used to return a string representation of the argument in the base, specified by the second argument base. If the radix/base is smaller than Character.MIN_RADIX or larger than Character.MAX_RADIX, then the base 10 is used. The ASCII characters are used as digits: 0 to 9 and a to z.Syntax:
public static String toString(int a, int base)
Parameter: The method accepts two parameters:
a: This is of integer type and refers to the integer value that is to be converted.
base: This is also of integer type and refers to the base that is to be used while representing the strings.
Return Value: The method returns a string representation of the specified argument in the specified base.
Examples:
Input: a = 71, base = 2Output: 1000111
Input: a = 314, base = 16Output: 13a
The below programs illustrate the Java.lang.Integer.toString(int a, int base) Method:
Java
// To convert Decimal to Hexadecimal Number//import java.util.*; // Main driver methodpublic class Main {    public static void main(String[] args)    {        // Number in decimal        int number = 2545;         // output        System.out.println(Integer.toString(number, 16));    }} // This code is written by ZEESHAN AHMAD//
9f1

Time complexity: O(N)Auxiliary Space: O(1)
zeeshan118668
Java
Java Programs
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.