Встречается на собеседованиях • сегодня
Какой тип данных лучше использовать для хранения сумм денег
Для хранения денежных сумм в Java лучше использовать BigDecimal, так как он обеспечивает точные вычисления без ошибок округления, характерных для float и double.
java
import java.math.BigDecimal;
BigDecimal price = new BigDecimal("19.99");
BigDecimal tax = new BigDecimal("0.20");
BigDecimal total = price.multiply(tax.add(BigDecimal.ONE));Почему не double?
Из-за двоичной арифметики с плавающей точкой возможны неточности (например, 0.1 + 0.2 ≠ 0.3).
Дополнительно:
- Используй строковый конструктор (
new BigDecimal("10.50")), чтобы избежать ошибок при парсинге. - Для округления применяй
setScale()сRoundingMode.
java
BigDecimal rounded = total.setScale(2, RoundingMode.HALF_UP);
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы