Java и неограниченные десятичные знаки?

Есть ли простой способ, с помощью которого я могу манипулировать десятичными числами высокой точности в java, без ограничения количества десятичных знаков и возможности вывода числа в println или записи его в файл? Я хочу работать с одним из тождеств PI, который включает в себя сумму дробей, где k начинается с 0 и доходит до бесконечности. Я знаю, что в большинстве систем используются ограниченные десятичные числа, но нельзя ли использовать какой-нибудь предварительно разработанный класс, который хранит значение в виде связанного списка массивных блоков памяти, если число становится достаточно длинным? Пожалуйста, имейте в виду, что мне также нужно выполнять арифметические действия с этим классом. Сложения, вычитания, умножения и деления должно быть достаточно.


person Drifter64    schedule 31.12.2013    source источник
comment
apfloat.org/apfloat_java, если вы не возражаете против использования внешних библиотек.   -  person Jixi    schedule 01.01.2014
comment
Для бесконечной точности вам нужна бесконечная память. Также вычисления с бесконечной точностью также занимают бесконечное количество времени.   -  person Peter Lawrey    schedule 01.01.2014
comment
Согласованный. Тем не менее, я думаю, дело в том, что я буду использовать как можно больше доступной памяти. :) Хорошее замечание по поводу времени, я полагаю, плохо ожидаю, что это будет программа, которая будет работать в фоновом режиме какое-то время!   -  person Drifter64    schedule 01.01.2014


Ответы (2)


Я считаю, что вы ищете класс java.lang.BigDecimal.

person Epiglottal Axolotl    schedule 31.12.2013
comment
Спасибо, посмотрю. :) - person Drifter64; 01.01.2014

Посмотрите на java.lang.BigDecimal, может решить вашу проблему.

http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html

person Andres    schedule 31.12.2013