Java入门:基础算法之二进制转换为十进制

Posted 盆古开天地

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java入门:基础算法之二进制转换为十进制相关的知识,希望对你有一定的参考价值。

Java有两种方法可以将二进制数转换为十进制数:

1)使用Integer类的Integer.parseInt()方法。

2)自己编写转换逻辑。

方法1:使用Integer.parseInt()实现二进制转换为十进制

import java.util.Scanner;
class BinaryToDecimal {
    public static void main(String args[]){
       Scanner input = new Scanner( System.in );
       System.out.print("Enter a binary number: ");
       String binaryString =input.nextLine();
       System.out.println("Output: "+Integer.parseInt(binaryString,2));
    }
}

输出:

Enter a binary number: 1101
Output: 13

方法2:使用自定义逻辑实现二进制转换十进制

public class Details {
 
  public int BinaryToDecimal(int binaryNumber){
 
    int decimal = 0;
    int p = 0;
    while(true){
      if(binaryNumber == 0){
        break;
      } else {
          int temp = binaryNumber%10;
          decimal += temp*Math.pow(2, p);
          binaryNumber = binaryNumber/10;
          p++;
       }
    }
    return decimal;
  }
 
  public static void main(String args[]){
    Details obj = new Details();
    System.out.println("110 --> "+obj.BinaryToDecimal(110));
    System.out.println("1101 --> "+obj.BinaryToDecimal(1101));
    System.out.println("100 --> "+obj.BinaryToDecimal(100));
    System.out.println("110111 --> "+obj.BinaryToDecimal(110111));
  }
}

输出:

110 --> 6
1101 --> 13
100 --> 4
110111 --> 55

 

以上是关于Java入门:基础算法之二进制转换为十进制的主要内容,如果未能解决你的问题,请参考以下文章

《算法基础学习》进制转换(入门)

Java基础之进制转换

编程算法基础-2.3进制转换

Java基础入门五)之方法以及递归算法

小航的算法日记进制转换 - 入门

lua之m进制转换为n进制-任意进制转换算法