Страницы

Поиск по вопросам

среда, 29 января 2020 г.

Вывод double в java

#double #java


Имею: 
double s1 = 2.0;
double s2 = 2.3;
double s3 = 2.33,
double s4 = 2.333;

Требуется чтоб при выводе на экран вышли результаты: 
s1 = 2
s2 = 2.3
s3 = 2.33
s4 = 2.333

Проблема в том, что надо использовать одну функцию ко все числам.
    


Ответы

Ответ 1



Formatting Numeric Print Output Код на ideone.com /* package whatever; // don't place package name! */ import java.util.*; import java.lang.*; import java.io.*; /* Name of the class has to be "Main" only if the class is public. */ class Ideone { public static void main (String[] args) throws java.lang.Exception { double s1 = 2.0; double s2 = 2.3; double s3 = 2.33; double s4 = 2.333; System.out.format("s1 = %.0f%n", s1); System.out.format("s2 = %.1f%n", s2); System.out.format("s3 = %.2f%n", s3); System.out.format("s4 = %.3f%n", s4); System.out.format("s1 = %.0f; s2 = %.1f; s3 = %.2f; s4 = %.3f", s1, s2, s3, s4); } }

Ответ 2



Спасибо, я сам нашел уже) 10 раз заходил по первой ссылке, но не дочитывал до конца) Вот код, который решил мою проблему. import java.text.*; public class DecimalFormatDemo { static public void customFormat(String pattern, double value ) { DecimalFormat myFormatter = new DecimalFormat(pattern); String output = myFormatter.format(value); System.out.println(value + " " + pattern + " " + output); } static public void main(String[] args) { customFormat("###,###.###", 123.0); customFormat("###,###.###", 123.120); customFormat("###,###.######", 123.0); customFormat("###,###.######, 123.123120); } } Результат: 123 123,12 123 123,12312

Комментариев нет:

Отправить комментарий