2015-10-01 5 views
1
int n=10; 
BigInteger fact = new BigInteger("n"); 
System.out.println(fact); 

Я получаю сообщение об ошибке, говоря, что у него нет такого конструктора. Кто-нибудь, пожалуйста, помогите мне передать переменную объекту BigInteger.Как передать переменную BigInteger?

+0

Какие программирования langua GE? Вероятно, нет конструктора, который берет строку? –

+0

Это Java-язык, я думаю, что только Java поддерживает BigInteger. – harry

+0

.NET также имеет BigInteger. –

ответ

3

Учитывая синтаксис, я предполагаю, что это Java.

Конструктор BigInteger должен иметь строку, представляющую десятичное значение в качестве параметра, например, «10».

В вашем случае ему предоставляется строка «n», которая не представляет десятичное значение.

Чтобы исправить код у вас есть несколько вариантов, вы могли бы дать строковое значение целого конструктору 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

Смежные вопросы