Десятичное преобразование
Я пытаюсь установить десятичные значения, ниже моя строка ввода
String rate="1.000000000";
Преобразование в двойной:
Double converted=Double.valueOf(rate);
DecimalFormat format=new DecimalFormat("#.########"); //Setting decimal points to 8
System.out.println("ouput"+format.format(rate)); //Giving output as 1.
Я не понимаю, как это сделать, любые намеки, пожалуйста.
С Уважением,
Chaitu
3 ответа
Решение
Пытаться
DecimalFormat format=new DecimalFormat("#.00000000");
а также
System.out.println("ouput"+format.format(converted));
#
не будет отображаться для 0, используйте 0
вместо:
String rate="1.010000000";
Double converted=Double.valueOf(rate);
DecimalFormat format=new DecimalFormat("0.00000000");
System.out.println("ouput "+format.format(converted));
Во-первых, вы передаете строку rate
к DecimalFormat.format
метод. Это не удастся, вам нужно пройти converted
объект в.
Когда я проверил ваш код с вышеуказанными изменениями, я получил 1,01 на выходе. Чтобы отформатировать до 8 знаков после запятой, следуйте комментариям Bala Rs. т.е. DecimalFormat format = new DecimalFormat("#.00000000");