Как отформатировать двойное значение для заданной локали и количества десятичных знаков?

Как я могу использоватьNumberFormat отформатироватьdouble значение для данногоLocale (локали по умолчанию достаточно) и для заданного количества десятичных знаков?

Например, у меня есть эти значения:

<code>double d1 = 123456.78;
double d2 = 567890;
</code>

И я хочу напечатать их следующим образом, например, с использованием языка США и 2 десятичных знаков:

<code>123,456.78
567,890.00
</code>

В данном случае меня не волнует режим округления, потому что эти двойные значения получаются изBigDecimal с заданным масштабом, поэтому их количество десятичных разрядов всегда меньше или равно количеству десятичных разрядов, которые я хочу напечатать.

Edit:

Чтобы было немного яснее, я хочу отображать деньги в зависимости от локали, но с фиксированным числом десятичных знаков. В приведенном выше примере показано, как значения должны быть отформатированы, если языковой стандарт системыen_US, Теперь скажем, системный языкcs_CZ (Чешский), поэтому одинаковые числа должны быть отформатированы следующим образом:

<code>123 456,78
567 890,00
</code>

Теперь, как я могу настроить NumberFormat, чтобы всегда отображать 2 десятичных знака, но отображать разделитель тысяч и десятичную точку в зависимости от текущей локали?

Ответы на вопрос(4)

Ваш ответ на вопрос