Java 将二进制转换为八进制

Java 将二进制转换为八进制

二进制数 − 有四种可用的数字系统,二进制数是其中之一。二进制数基本上由两个数字表示,即1和0。二进制数以base-2的方式表示在数字系统中。

八进制数 − 八进制数也是可用的数字系统之一。八进制数由8个数字表示,即从0到7(0、1、2、3… 7)。八进制数在数字系统中以base-8的方式表示。

这里我们将二进制数转换为八进制数,但为了实现这一目标,我们首先需要将二进制数转换为十进制数,以便我们可以进一步将该十进制数转换为八进制数。

Binary Number → Decimal Number → Octal Number

在本文章中,我们将看到如何在Java中将二进制转换为八进制。

为了向您展示一些实例 –

实例1

Input Binary number is 101011.
By converting into decimal = 43.
Now converting it to octal = 53

实例2

Input Binary number is 1111111.
By converting into decimal = 127
Now converting it to octal = 177

实例3

Input Binary number is 11001100.
By converting into decimal = 204.
Now converting it to octal = 314.

步骤

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

步骤-2 - 我们声明了两个用户定义的方法。一个方法用于将二进制数转换为十进制数。在另一个方法中,我们将十进制数转换为八进制数。

步骤-3 - 当我们将二进制转换为十进制时,我们按照递增顺序乘以2的幂,以便获得适当的十进制值。

步骤-4 - 在另一个用户定义的方法中,我们将十进制值转换为八进制值。

步骤-5 - 通过使用此方法,我们将二进制数转换为八进制数。

多种方法

我们提供了不同的解决方法。

  • 通过具有静态输入值的用户定义方法。
  • 通过具有用户输入值的用户定义方法。

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

方法1:使用具有静态输入值的用户定义方法

在这个方法中,我们声明一个长整型变量,并在程序中将其初始化为二进制数,然后将这个数作为参数传递给一个用户定义的方法,然后在方法内部,通过使用算法,我们可以将二进制数转换为八进制数。

示例

import java.util.*;
public class Main {
   public static void main(String[] args){
      long binary=1010;
      binToDec(binary);
   }
   public static void binToDec(long binaryNumber){
      int decNum = 0, i = 0;
      while (binaryNumber > 0) {
         decNum += Math.pow(2, i++) * (binaryNumber % 10);
         binaryNumber /= 10;
      }
      System.out.println("In Decimal="+decNum);
      decToOct(decNum);
   }
   public static void decToOct(long decNum){
      String octalString = Long.toOctalString(decNum);
      int octalNumber = Integer.parseInt(octalString);
      System.out.println("In octal="+octalNumber);
   }
}

输出

In Decimal=10
In octal=12

方法2:通过使用用户定义的方法和用户输入值

在这种方法中,我们声明一个二进制输入数字,并将该数字作为参数传递给一个用户定义的方法,然后在方法内部,通过使用算法,我们可以将二进制数转换为十六进制数。

示例

import java.util.*;
public class Main {
   public static void main(String[] args){
      Scanner sc = new Scanner(System.in);
      System.out.print("Enter a binary number: ");
      long binary=sc.nextLong();
      binToDec(binary);
   }
   public static void binToDec(long binaryNumber){
      int decNum = 0, i = 0;
      while (binaryNumber > 0) {
         decNum += Math.pow(2, i++) * (binaryNumber % 10);
         binaryNumber /= 10;
      }
      System.out.println("In Decimal="+decNum);
      decToOct(decNum);
   }
   public static void decToOct(long decNum){
      String octalString = Long.toOctalString(decNum);
      int octalNumber = Integer.parseInt(octalString);
      System.out.println("In octal="+octalNumber);
   }
}

输出

Enter a binary number: 1111
In Decimal=15
In octal=17

在本文中,我们探讨了如何使用不同的方法在Java中将二进制转换为八进制。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程