欢迎访问宙启技术站
智能推送

使用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的函数,它接受一个二进制字符串作为参数并返回对应的十进制数。

在函数内部,我们先初始化decimalpower变量为0。decimal变量用于存储十进制结果,power变量用于记录当前位的权值。

接下来,我们使用一个循环从二进制字符串中逐个取出每一位数字。我们从字符串的最后一位开始遍历到 位,可以使用binary.charAt(i)获取到每一位的字符。

我们将字符转换为数字使用Character.getNumericValue方法,这将返回对应的十进制数值。

然后,我们将每一位数字乘以2的power次方,并将其累加到decimal变量中。

最后,我们返回计算得到的十进制结果。

main函数中,我们定义一个二进制字符串binary,并调用binaryToDecimal函数将其转换为十进制数。

最后,我们使用System.out.println打印出结果。

运行程序,将会输出:

Decimal: 85

这表明二进制数1010101对应的十进制数为85。

这就是使用Java函数解决二进制数转换成十进制数的问题的方法。