IBM пожертвовал свой код для Java 5.
Реализация BigDecimal
в OpenJDK является продолжением и развитием этой оригинальной реализации IBM.Обратите внимание на уведомление об авторских правах IBM в исходном коде OpenJDK .Возможно, история изменений в этом файле может вас заинтересовать.
Со времени их пожертвования я знаю, что были сделаны некоторые серьезные улучшения, хотя я не могу вспомнить детали.На конференциях JavaOne обсуждались эти улучшения, исправления ошибок и математические проблемы.
Мигрировать очень просто:
- Измените
import
операторы. - Знайте, что любые сериализованные объекты не могут быть прочитаны между двумя реализациями (будучи идентифицированными как происходящие из двух разных классов).
Цитируя IBM:
Расширенный BigDecimal
Начиная с Java ™ 5.0, класс IBM® BigDecimal был принят Oracle как java.math.BigDecimal.Класс com.ibm.math.BigDecimal зарезервирован для возможного будущего использования IBM и в настоящее время устарел.Перенесите существующий код Java для использования java.math.BigDecimal.
В новом java.math.BigDecimal используются те же методы, что и в предыдущем java.math.BigDecimal и com.ibm.math.BigDecimal.Существующий код, использующий java.math.BigDecimal, продолжает работать правильно.Два класса не сериализуются.
Чтобы перенести существующий код Java для использования класса java.math.BigDecimal, измените оператор импорта в начале вашего файла .java с: import com.ibm.math. ;импортировать java.math. ;.