Как преобразовать двоичный номер в BigInteger в Java?

Мне нужно было преобразовать очень большое двоичное значение в его десятичный эквивалент. Поскольку это большое целое число, я использовал BigInteger. Итак, как мне преобразовать этот двоичный номер в BigInteger?

Ответ 1

Если у вас есть String представление вашего двоичного числа, предоставьте его этому перегруженному конструктору BigInteger, чтобы создать экземпляр:

BigInteger(String val, int radix);

В вашем случае, radix явно 2, т.е. вы можете использовать что-то вроде этого:

BigInteger yourNumber = new BigInteger("101000101110...1010", 2);

Ответ 2

Если у вас есть двоичная строка, вы можете преобразовать ее в BigInteger следующим образом:

 String binaryString = "1010110101011010101010101101010101100101011010001010001100101110";
 BigInteger bigInt = new BigInteger(binaryString, 2);

Ответ 3

    String binaryValue = "11111111";
    BigInteger bi = new BigInteger(binaryValue, 2);