【发布时间】:2013-07-23 21:31:09
【问题描述】:
我需要将一个非常大的二进制值转换为其十进制等效值。因为它是一个大整数,所以我使用的是 BigInteger。那么如何将此二进制数转换为 BigInteger?
【问题讨论】:
-
我们如何得到这个二进制数?作为字节数组?
标签: java binary biginteger
我需要将一个非常大的二进制值转换为其十进制等效值。因为它是一个大整数,所以我使用的是 BigInteger。那么如何将此二进制数转换为 BigInteger?
【问题讨论】:
标签: java binary biginteger
如果您有二进制数的String 表示,请将其提供给这个重载的BigInteger 构造函数以创建一个实例:
BigInteger(String val, int radix);
在你的情况下,基数显然是 2,即你可以使用这样的东西:
BigInteger yourNumber = new BigInteger("101000101110...1010", 2);
【讨论】:
如果你有二进制字符串,你可以像这样将它转换为BigInteger:
String binaryString = "1010110101011010101010101101010101100101011010001010001100101110";
BigInteger bigInt = new BigInteger(binaryString, 2);
【讨论】:
String binaryValue = "11111111";
BigInteger bi = new BigInteger(binaryValue, 2);
【讨论】: