Встречается на собеседованиях • сегодня

Подойдет ли double для точного хранения

double не подходит для точного хранения денежных значений или других критичных к точности данных из-за ошибок округления в двоичной арифметике. Например:

java
double a = 0.1;
double b = 0.2;
System.out.println(a + b == 0.3); // false

Для точных вычислений используйте BigDecimal:

java
BigDecimal a = new BigDecimal("0.1");
BigDecimal b = new BigDecimal("0.2");
System.out.println(a.add(b).equals(new BigDecimal("0.3"))); // true

Или, если нужны целые числа - long с хранением в копейках/центах.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы