在Java中将50位数字符串转换为BigInteger的最佳方法是什么?它没有valueOf(String)方法,我无法转换为Long,因为它太小了。
答案 0 :(得分:14)
它有一个BigInteger(String)
构造函数: - )
String S = "12345678901234567890123456789012345678901234567890";
BigInteger bi = new BigInteger(S);
答案 1 :(得分:2)
怎么样......
BigInteger bi = new BigInteger(my50DigitString);
所有这些Xxx.valueOf()方法都是构造函数的替代方法,因为它们允许返回共享的缓存副本。根据定义,构造函数每次都返回一个新实例。所以valueOf()是一个很好的优化,但设计者显然没有发现提供BigInteger.valueOf(String)方法很有趣。在这种情况下,您将不得不使用其中一个构造函数。
答案 2 :(得分:1)
BigInteger有一个带String的构造函数。
答案 3 :(得分:1)
你试过吗
BigInteger i = new BigInteger(s);