Вопросы по теме 'bigdecimal'
Относительно большого десятичного числа
У меня есть файл csv, в котором поля суммы и количества присутствуют в каждой подробной записи, кроме записи заголовка и трейлера. Запись трейлера имеет общие значения затрат, которые представляют собой общую сумму количества, умноженную на поле...
3117 просмотров
schedule
28.10.2022
ArithmeticException: бесконечное десятичное раскрытие; нет точного представимого десятичного результата
Почему следующий код вызывает исключение, показанное ниже?
BigDecimal a = new BigDecimal("1.6");
BigDecimal b = new BigDecimal("9.2");
a.divide(b) // results in the following exception.
Исключение:
java.lang.ArithmeticException:...
362415 просмотров
schedule
17.01.2024
Как я могу создать случайный BigDecimal в Java?
Этот вопрос: Как создать случайный BigInteger описывает способ достижения той же семантики, что и Random.nextInt(int n) для BigIntegers.
Я хотел бы сделать то же самое для BigDecimal и Random.nextDouble().
Один из ответов на приведенный выше...
9776 просмотров
schedule
15.01.2024
Сохранение BigDecimal в десятичном поле в базе данных делает BigDecimal другим
Я всегда думал, что вы никогда не должны использовать числа с плавающей запятой для экономии денег в базе данных. Поэтому я использовал десятичную. Проблема в том, что я сохраняю десятичное число 100, и оно помещается в базу данных как 99,9999.
У...
4036 просмотров
schedule
05.11.2022
Grails: как отключить группировку тысяч для вывода BigDecimal
При отображении значения BigDecimal в представлении оно отображается с запятой в качестве разделителя тысяч, что сбивает с толку мой ввод «числа» HTML5. Есть ли способ отключить группировку.
Я бы хотел, чтобы число 1000 отображалось как 1000, а не...
330 просмотров
schedule
10.11.2023
Преобразование числа Java в BigDecimal: лучший способ
Я ищу лучший способ преобразовать число в BigDecimal.
Достаточно ли этого?
Number number;
BigDecimal big = new BigDecimal(number.toString());
Можем ли мы потерять точность при использовании метода toString() ?
102335 просмотров
schedule
04.01.2024
Использование Double для финансового программного обеспечения
Я знаю, что этот вопрос уже несколько раз обсуждался, но я не совсем удовлетворен ответом. Пожалуйста, не отвечайте "Двойные значения неточны, вы не можете представить 0,1! Вы должны использовать BigDecimal" ...
В основном я занимаюсь финансовым...
1571 просмотров
schedule
04.07.2022
Точность BigDecimal выше 1E22
по какой-то причине я обнаружил, что программирую какую-то программу, которая должна выполнять некоторые астрономические вычисления. Хотя большая часть будет посвящена переносу правильной формулы на Java, я обнаружил раздражающую проблему прямо в...
190 просмотров
schedule
09.02.2024
Формат Java BigDecimal числа с запятой и 2 десятичными знаками
Я хочу отформатировать BigDecimal Numbers с запятой и двумя десятичными точками. например
Amount is: 5.0001 and formatted to: 5.00
Amount is: 999999999.999999 and formatted to: 999,999,999.99
Amount is: 1000.4999 and formatted to: 1,000.49
Amount...
24443 просмотров
schedule
04.08.2022
новый BigDecimal(0) NumberFormatException
У меня странная проблема с BigDecimal.
У меня есть метод разбора следующим образом:
protected BigDecimal parseBigDecimalFromText(String text) {
Logger.info("parseBigDecimalFromText("+text+")");
return new BigDecimal(text);
}...
5118 просмотров
schedule
25.10.2022
Сравнение вывода bigdecimal
SQL-запрос выводит вывод bigdecimal, который, как я ожидаю, будет 144.50 , а фактическое значение будет #<BigDecimal:7fbe367ed118,'0.1445E3',18(18)>
Я попробовал следующее, чтобы сравнить два:
assert_equal BigDecimal('144.50'),...
1377 просмотров
schedule
08.11.2022
BigDecimal в Java: как округлить до 10?
Я хочу округлить числа BigDecimal до 10 вверх или вниз:
112 --> 110
117 --> 120
150 --> 150
115 --> 120
114.9 --> 110
67 --> 70
64 --> 60
и т.п.
Я пробовал это:
number = number.round(new MathContext(1,...
3362 просмотров
schedule
05.09.2022
Java: округление десятичного значения до HALF_EVEN
Я пытался написать java-код для округления значения до приведенного ниже требования.
Если x=63,88 => roundedValue= 64,00;
Если x=63,50 => roundedValue= 64,00
Если x=63,32 => roundedValue= 63,32
Я пробовал использовать различные режимы...
1669 просмотров
schedule
08.08.2022
Проблема с масштабом и округлением BigDecimal
В основном я написал метод для обратного значения экземпляра BigDecimal:
public class Main{
public static void main(String[] args) {
BigDecimal value1 = new BigDecimal("88");
BigDecimal reciproc1 = reciproc(value1);
BigDecimal...
721 просмотров
schedule
14.10.2022
Как использовать операторы сравнения, такие как ›, =, ‹ в BigDecimal
У меня есть класс домена с unitPrice, установленным как тип данных BigDecimal. Теперь я пытаюсь создать метод для сравнения цен, но похоже, что у меня нет операторов сравнения в типе данных BigDecimal. Должен ли я изменить тип данных или есть другой...
209831 просмотров
schedule
12.08.2022
Готов ли JSR-354 Money API к использованию в производственной среде?
В настоящее время я занимаюсь исследованием того, какой тип данных будет подходящим для денег/валюты в Java 8.
Я столкнулся со спецификацией JSR-354 для типов данных и операций с данными о деньгах/валюте. Эталонная реализация со своим API...
693 просмотров
schedule
30.01.2024
Потоки: рассчитать разницу тоталов за один раз
У меня есть List<LedgerEntry> ledgerEntries , и мне нужно рассчитать сумму creditAmount и debitAmount.
class LedgerEntry{
private BigDecimal creditAmount;
private BigDecimal debitAmount;
//getters and setters
}
Я реализовал это...
355 просмотров
schedule
23.12.2023
Как узнать, может ли BigDecimal точно преобразовать в float или double?
Класс BigDecimal имеет несколько полезных методов, гарантирующих преобразование без потерь:
byteValueExact()
shortValueExact()
intValueExact()
longValueExact()
Однако методы floatValueExact() и doubleValueExact() не...
913 просмотров
schedule
19.07.2022
Странное поведение RoundingMode.DOWN
Может ли кто-нибудь объяснить мне поведение RoundingMode, показанное в примерах? Для 2-го примера я ожидал 66,800 в результате, а не 66,799.
Пример 1 :
BigDecimal bg1 = new BigDecimal(66.7);
bg1 = bg1.setScale(3, RoundingMode.DOWN);...
40 просмотров
schedule
15.02.2024