Пока каждая часть вашего информационного конвейера использует BigDecimal.valueOf
, а BigDecimal(double)
используется абсолютно нигде, неявное округление valueOf
может предотвратить худшее. Но вы действительно знаете, как JPA и / или JDBC переводят между numeric(10,2)
и double
? И уверены ли вы, что это не изменится в будущем?
Еще один момент: valueOf
и doubleValue
работают с промежуточными String
представлениями. В некоторых ситуациях это может быть связано с производительностью и сборкой мусора.
Кроме того, есть достаточно примеров проблем с double
- просто посмотрите в раздел «Связанные» с правой стороны. Или посмотрите этот блог , где даже простые вещи могут разрушить.
Так что ситуация немного похожа на ускорение: некоторые не делают этого, некоторые делают это иногда и надеются, что ничего не происходит, а некоторые ... Я думаю, вы понимаете.