📜  十进制到十六进制转换的Java程序

📅  最后修改于: 2022-05-13 01:54:44.027000             🧑  作者: Mango

十进制到十六进制转换的Java程序

给定一个十进制数N,将N转换成等价的十六进制数,即将基数为10的数转换为基数16。十进制数系统使用10位0-9,十六进制数系统使用0-9,AF来表示任何数值。

例子:

Input : 10
Output: A

Input : 2545
Output: 9F1

方法:

  1. 将数字除以 16 时的余数存储在数组中。
  2. 现在将数字除以 16
  3. 重复以上两步,直到数字不等于0。
  4. 现在以相反的顺序打印数组。

执行:

例子



Java
// Java program to convert Decimal Number
// to Hexadecimal Number
  
// Importing input output classes
import java.io.*;
  
// Main class
public 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

时间复杂度: O(log N)