我需要将一个非常大的二进制值转换为十进制等值。因为它是一个大整数我使用BigInteger。那么如何将这个二进制数转换为BigInteger呢?
答案 0 :(得分:20)
如果你有二进制数的String
表示,请将它提供给这个重载的BigInteger
构造函数来创建一个实例:
BigInteger(String val, int radix);
在你的情况下,基数显然是2,即你可以使用这样的东西:
BigInteger yourNumber = new BigInteger("101000101110...1010", 2);
答案 1 :(得分:4)
如果您有二进制字符串,可以将其转换为BigInteger
,如下所示:
String binaryString = "1010110101011010101010101101010101100101011010001010001100101110";
BigInteger bigInt = new BigInteger(binaryString, 2);
答案 2 :(得分:2)
String binaryValue = "11111111";
BigInteger bi = new BigInteger(binaryValue, 2);