如何将变量传递给BigInteger?

时间:2015-10-01 17:35:26

标签: java parameter-passing biginteger

int n=10;
BigInteger fact = new BigInteger("n");
System.out.println(fact);

我收到一条错误,说它没有这样的构造函数。任何人都可以帮我将变量传递给BigInteger对象。

1 个答案:

答案 0 :(得分:3)

鉴于语法,我猜这是Java。

BigInteger构造函数应该被赋予一个表示十进制值作为参数的String,例如“10”。

在你的情况下,给它字符串“n”,它不代表十进制值。

要更正代码,您有多个选项,您可以将整数的String值赋予BigInteger构造函数:

int n=10;
BigInteger fact = new BigInteger(String.valueOf(n));
System.out.println(fact);

或者您可以使用BigInteger类提供的静态函数:

int n=10;
BigInteger fact = BigInteger.valueOf(n);
System.out.println(fact);

无论哪种方式,您都应该查看BigInteger文档: http://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html