Java中的二进制到十进制的转换
只有 0 和 1 两个数字的数字称为二进制数。它们仅在以 2 为基数的数字系统中表示。我们知道,二进制是现代计算机的原生数字语言。但是我们更习惯十进制数。当然,您可以将二进制数转换为十进制数,反之亦然。在下图中,您可以看到二进制到十进制转换的示例。10101是一个用于解释数学计算的二进制数。![Java 将二进制转换为十进制 - 1](https://cdn.codegym.cc/images/article/032efda6-9569-49f6-808b-816669afd96b/512.jpeg)
- 使用 Java 方法
- 使用自定义逻辑
Java 预建方法
Java 为我们提供了Integer.parseInt()方法来将字符串转换为整数。parseInt()方法属于Integer类。句法
public static int parseInt(String binaryNumber, int radix)
例子
public class ConvertingBinaryToDecimal {
public static void main(String args[]){
String binaryNumber="10101";
int decimalNumber=Integer.parseInt(binaryNumber,2);
System.out.println(decimalNumber);
}
}
输出
21
使用自定义逻辑
我们还可以用 Java 编写一个程序,接收一个整数并将其转换为十进制数。让我们看一个例子来理解它。例子
public class ConvertingBinaryToDecimal {
// function for converting binary to decimal number
public static int getDecimalNumber(int binaryNumber){
int decimalNumber = 0;
int power = 0;
while(binaryNumber > 0){
//taking the rightmost digit from binaryNumber
int temp = binaryNumber%10;
//now multiplying the digit and adding it to decimalNumber variable
decimalNumber += temp*Math.pow(2, power);
//removing the rightmost digit from binaryNumber variable
binaryNumber = binaryNumber/10;
//incrementing the power variable by 1 to be used as power for 2
power++;
}
return decimalNumber;
}
public static void main(String args[]){
System.out.println("Decimal value is: "+getDecimalNumber(111010));
System.out.println("Decimal value is: "+getDecimalNumber(001010));
}
}
输出
十进制值为:58 十进制值为:24
GO TO FULL VERSION