Изменение десятичного формата во всем коде с помощью параметра, созданного в меню переключателей - PullRequest
0 голосов
/ 28 января 2019

При написании кода одной из задач было позволить пользователю изменить десятичный формат во всей программе.

Программа состоит из нескольких калькуляторов, все они должны иметь возможность давать десятичные результаты.Затем у пользователя есть выбор, сколько десятичных разрядов он хотел бы видеть.

Я знаю, что это можно сделать с помощью параметров формата, просто не знаю, как.

/ Ответ уже дан

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Создайте переменную, содержащую десятичный формат

DecimalFormat df = new DecimalFormat();

В пункте меню 4, где выбрано количество десятичных знаков, и считайте в dec

df.setMaximumFractionDigits(dec);
df.setMinimumFractionDigits(dec);

Вышеуказанное означает, что числа всегда будутпечатать с dec числом десятичных знаков

Затем, когда вы захотите напечатать двойное, используйте форматер

 System.out.println("The result is " + df.format(someValue));

Пример

DecimalFormat df = new DecimalFormat();
for (int i = 0; i < 4; i++) {
    df.setMaximumFractionDigits(i);
    df.setMinimumFractionDigits(i);
    System.out.println("example " + df.format(24) + " " + df.format(12.3456));
}

output

пример 24 12
пример 24,0 12,3
пример 24,00 12,35
пример 24,000 12,346

0 голосов
/ 28 января 2019

Попробуйте метод Java: String.format () ;

double number = 12.43544545;
int decimalPoint = 3;

System.out.println(String.format("%." + decimalPoint + "f", number));
...