2
я пытаюсь отобразить ведущий нуль десятичного используя десятичного формата ... Мой код выглядит следующим образом:дисплея ведущего нуля с использованием десятичного формата
import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.text.ParseException;
public class ElementValueUtil {
public static String formatDoubleNonExponential(double value) {
return formatDoubleNonExponential(value, null);
}
public static String formatDoubleNonExponential(double value, String elementName) {
DecimalFormat decimalFormat = new DecimalFormat();
Integer decimalPrecision = 5;
decimalFormat.setMaximumFractionDigits(decimalPrecision);
decimalFormat.setRoundingMode(RoundingMode.HALF_UP);
String exponentialNum = decimalFormat.format(value);
try{
return String.valueOf(decimalFormat.parse(exponentialNum));
}catch(ParseException exception){
return String.valueOf(value);
}
}
public static void main(String[] args) {
Double num = 12.4567012;
System.out.println(formatDoubleNonExponential(num));
}
}
Я получаю выход, как «12.4567» Но я я ожидал «12,45670»
Любая помощь будет оценена ...
Примечание: Целая часть может иметь любое количество цифр или не может иметь любую цифру ... но фракция часть должна Округление до 5 знаков после запятой если оно имеет более 5 десятичных знаков
For example
Input Output
12.25 12.25
125.2345 125.2345
12.12340675 12.12341
12.1234.12340
Спасибо. Но это не удастся, когда я дам _12.25_, Результат будет показан как _12.25000_ вместо _12.25_. Поэтому я предпочитаю использовать «DecimalFormat». Но, к сожалению, он не показывает начальный ноль после округления его. – Bharani
ОК. Просмотреть мое обновление –