🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Java 程序:二进制到十进制的转换 > 原文: [https://beginnersbook.com/2014/07/java-program-for-binary-to-decimal-conversion/](https://beginnersbook.com/2014/07/java-program-for-binary-to-decimal-conversion/) 将二进制数转换为十进制数有以下两种方法: 1)使用`Integer`类的[`Integer.parseInt()`方法](https://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html#parseInt(java.lang.String,%20int))。 2)通过编写自己的逻辑进行转换,而无需使用任何预定义的方法。 ### 方法 1:使用`Integer.parseInt()`方法进行二进制到十进制的转换 ```java 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("输出: "+Integer.parseInt(binaryString,2)); } } ``` **输出:** ```java Enter a binary number: 1101 输出: 13 ``` ### 方法 2:不使用`parseInt`进行转换 ```java 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)); } } ``` **输出:** ```java 110 --> 6 1101 --> 13 100 --> 4 110111 --> 55 ```