Podwójna wartość z określoną precyzją w Javie
Programuję prosty program Java. Muszę pobrać ciąg z wejścia i podzielić go na dwie części: 1-podwójny 2-ciągowy. Następnie muszę wykonać prostą kalkulację na podwójnej i wysłać wynik do wyjścia z określoną dokładnością (4). Działa dobrze, ale jest problem, gdy wejście ma wartość 0, to nie działa poprawnie.
Na przykład dla tych danych wejściowych dane wyjściowe będą:
1 kg
wyjście: 2,2046
3,1 kg
produkcja: 6.8343
Ale gdy wejście ma wartość 0, wyjście powinno wynosić 0,0000, ale pokazuje 0,0. Co powinienem zrobić, aby zmusić go do pokazania 0.0000?
Czytałem podobny post o podwójnej precyzji, sugerują coś takiegoBigDecimal
klasa, ale nie mogę ich użyć w tym przypadku, mój kod to:
line=input.nextLine();
array=line.split(" ");
value=Double.parseDouble(array[0]);
type=array[1];
value =value*2.2046;
String s = String.format("%.4f", value);
value = Double.parseDouble(s);
System.out.print(value+" kg\n");