Ответ 1
Используйте его так.
BigInteger number = new BigInteger(myInt);
У меня есть такой способ:
Integer.parseInt(myInt)
не это целое число становится длинным, и я получаю следующее исключение:
java.lang.NumberFormatException: For input string: "4000123012"
что я могу сделать, чтобы избежать этой ошибки и все еще держать функции runnning?
Я попытался использовать BigInteger
, но не существует метода parse
, или я его не нашел.
Используйте его так.
BigInteger number = new BigInteger(myInt);
Мое решение:
String sLong = "4000123012";
long yourLong = Long.parseLong(sLong);
System.out.println("Long : "+yourLong);
OutPut:
Long : 4000123012
Вы также можете использовать Long.parse для целых чисел:
Long.parseLong(myInt)
который, конечно, возвращает a long
.
Максимальное значение Java Integer - 2147483647 (таблица ограничений).
Вы можете вывести String в Long через Long.parseLong(String s) и получить BigInteger, пройдя долго до BigInteger.valueOf(long l)
String s = "4000123012";
long l = Long.parseLong(s);
BigInteger bi = BigInteger(l);
EDIT: Вам всегда нужно попробовать исключить исключение в случае разбора одного типа другому и действовать в этом случае, например, установить определенное значение по умолчанию.
еще лучше, поскольку Alpesh Prajapati предлагает передать String конструктору:
BigInteger number = new BigInteger(myInt);