Pergunta

Qual seria a melhor maneira de converter uma string de 50 dígitos em um biginteger em Java? Ele não possui um método ValueOf (String) e não consigo converter por muito tempo porque é muito pequeno.

Foi útil?

Solução

Tem um BigInteger(String) Construtor :-)

String S = "12345678901234567890123456789012345678901234567890";
BigInteger bi = new BigInteger(S);

Outras dicas

Que tal...

BigInteger bi = new BigInteger(my50DigitString);

Todos esses métodos xxx.valueof () são alternativas aos construtores porque permitem devolver cópias compartilhadas e cache. Construtores, por definição, retornam uma nova instância sempre. Portanto, o valueof () é uma boa otimização, mas os designers aparentemente não acharam interessante fornecer um método BigInteger.ValueOf (String). Você terá que usar um dos construtores neste caso.

Biginteger tem um construtor que leva uma string.

Você tentou

BigInteger i = new BigInteger(s);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top