Я понимаю, что BigDecimal является наиболее точным способом выражения валюты, потому что обработка значений валюты как типа данных с плавающей запятой имеет тенденцию вызывать ошибки округления.Однако я также понимаю, что расчеты BigDecimal требуют больше памяти.Тем не менее, является ли использование BigDecimal вместо float или double действительно лучшей практикой для программ, работающих с валютными ценностями?Если я создаю программу, которая распечатывает детализированную квитанцию для каждого заказа в ресторане, с большей вероятностью не хватит памяти, если я использую BigDecimal, или с большей вероятностью получу ошибки округления, если вместо этого я использую значения с плавающей запятой?
(Примечание: «Что делать с производительностью Java BigDecimal?» - вопрос немного похожий, но меня больше беспокоит наименее рискованный вариант для относительно простой транзакции быстрого питания.)