Java程序:将八进制转换为十六进制


八进制数

八进制数也是一种可用的数字系统。八进制数用8个数字表示,从0到7(0, 1, 2, 3... 7)。八进制数在数字系统中表示为基数-8。

十六进制数

十六进制数也是一种可用的数字系统。十六进制数用16个数字表示,从0到15(0, 1, 2, 3... 15)。从10到15用A到F表示。十六进制数在数字系统中表示为基数-16。

问题陈述

首先将八进制数转换为其相应的十进制数,然后再次将该十进制数转换为十六进制数。通过这种方式,我们将八进制数转换为十六进制数。

在这篇文章中,我们将了解如何在Java中将八进制转换为十六进制。

展示一些实例:

实例-1

Input octal number is 1232.
The decimal converted value of it = 666.
Now the hexadecimal value of 666 = 29A.

实例-2

Input octal number is 5454.
The decimal converted value of it = 2860.
Now the hexadecimal value of 2860= B2C.

实例-3

Input octal number is 76564.
The decimal converted value of it = 32116.
Now the hexadecimal value of 32116 = 7D74.

算法

    步骤1 通过静态输入或用户输入方法获取输入数字。

    步骤2 我们首先使用Integer.parseInt(octalNumber, 8)方法将给定的八进制数转换为十进制数。

    步骤3 然后,我们使用Integer.toHexString(decimalNumber)方法将十进制数转换为十六进制数。

    步骤4 获取十六进制值后,我们将该值作为输出打印。

多种方法

我们提供了多种方法的解决方案。

  • 使用用户自定义方法和静态输入值。
  • 使用用户自定义方法和用户输入值。

让我们一一查看程序及其输出。

方法-1:使用用户自定义方法和静态输入值

在此方法中,我们将八进制输入数字声明为静态输入,并将此数字作为参数传递给用户自定义方法,然后在方法内部,使用算法将八进制数转换为二进制数。

示例

public class Main {
   public static void main(String args[]){
      //declare and store a octal number by static input method
      String inputNumber = "7654";
      //call the user defined method to give the output
      octalToHex(inputNumber);
   }
   //user defined method to convert the octal number into hexadecimal number
   public static void octalToHex(String octalNumber){
      //declare a variable
      //Convert the given Octal number to Decimal number and store it into that variable
      int decimalNumber = Integer.parseInt(octalNumber, 8);
      //declare a variable
      //now convert Decimal number to Hexadecimal number and store it into that variable
      String hexadecimalNumber = Integer.toHexString(decimalNumber);
      System.out.print("The Hexadecimal Value of "+ octalNumber + " is " + hexadecimalNumber);
   }
}

输出

The Hexadecimal Value of 7654 is fac

方法-2:使用用户自定义方法和用户输入值。

在此方法中,我们通过用户输入声明八进制输入数字,并将这些数字作为参数传递给用户自定义方法,然后在方法内部,使用算法将八进制数转换为十六进制数。

示例

import java.util.Scanner;
public class Main {
   public static void main(String args[]){
      //create object of scanner class
      Scanner sc = new Scanner(System.in);
      //ask the user to enter an octal number
      System.out.print("Enter an Octal Number = ");
      //declare and store an octal number by user input method
      String inputNumber = sc.nextLine();
      //call the user defined method to give the output
      octalToHex(inputNumber);
   }
   //user defined method to convert the octal number into hexadecimal number
   public static void octalToHex(String octalNumber) {
      //declare a variable
      // Convert the given Octal number to Decimal number and store it into that variable
      int decimalNumber = Integer.parseInt(octalNumber, 8);
      //declare a variable
      // now convert Decimal number to Hexadecimal number and store it into that variable
      String hexadecimalNumber = Integer.toHexString(decimalNumber);
      System.out.print("The Hexadecimal Value of "+ octalNumber + " is " + hexadecimalNumber);
   } 
}

输出

Enter an Octal Number = 45342
The Hexadecimal Value of 45342 is 4ae2

在这篇文章中,我们探讨了如何使用不同的方法在Java中将八进制数转换为十六进制数。

更新于:2024年7月8日

2K+ 次浏览

开启您的职业生涯

完成课程后获得认证

开始学习
广告