使用Java函数解决二进制数转换成十进制数的问题
发布时间:2023-07-30 20:09:49
要将二进制数转换为十进制数,可以使用以下Java函数实现:
public class BinaryToDecimal {
public static void main(String[] args) {
String binary = "1010101"; // 输入的二进制数
int result = binaryToDecimal(binary);
System.out.println("Decimal: " + result);
}
public static int binaryToDecimal(String binary) {
int decimal = 0;
int power = 0;
for (int i = binary.length() - 1; i >= 0; i--) {
int digit = Character.getNumericValue(binary.charAt(i));
decimal += digit * Math.pow(2, power);
power++;
}
return decimal;
}
}
在这个程序中,我们定义了一个名为binaryToDecimal的函数,它接受一个二进制字符串作为参数并返回对应的十进制数。
在函数内部,我们先初始化decimal和power变量为0。decimal变量用于存储十进制结果,power变量用于记录当前位的权值。
接下来,我们使用一个循环从二进制字符串中逐个取出每一位数字。我们从字符串的最后一位开始遍历到 位,可以使用binary.charAt(i)获取到每一位的字符。
我们将字符转换为数字使用Character.getNumericValue方法,这将返回对应的十进制数值。
然后,我们将每一位数字乘以2的power次方,并将其累加到decimal变量中。
最后,我们返回计算得到的十进制结果。
在main函数中,我们定义一个二进制字符串binary,并调用binaryToDecimal函数将其转换为十进制数。
最后,我们使用System.out.println打印出结果。
运行程序,将会输出:
Decimal: 85
这表明二进制数1010101对应的十进制数为85。
这就是使用Java函数解决二进制数转换成十进制数的问题的方法。
