Ввод
Ввести несколько вещественных переменных из входного потока и записать их в переменные можно стандартным способом:
double x = in.nextDouble();
float y = in.nextFloat();
Первое число попадает в переменную
\(x\), второе - в
\(y\)
Вывод
В Java несколько способов вывода вещественных чисел.
1) System.out.printf для простого вывода в консоль
По умолчанию при использовании printf вещественные числа выводятся с точностью до 6 знаков после запятой. Но бывают случаи, что нужно вывести с другой точностью. В этом случае необходимо указать сколько знакомест отвести после запятой.
double a=0.5;
System.out.printf("%f",a); // на экране 0.500000
System.out.printf("%.2f",a); // на экране 0.5
System.out.printf("%10.2f",a); // можно задать общее число позиций, отводимых на вывод числа
System.out.printf("%.2e",a); // вывод числа в научном формате с точность в 2 знака
2) DecmialFormat для получения строки из числа с помощью заданного шаблона
Класс DecmialFormat позволяет управлять выводом начальных и конечных нулей, префиксов и суффиксов, разделителей тысяч и десяти тысяч, но это делает код немного более сложным.
double a = 123.45;
DecimalFormat df = new DecimalFormat("#.###");
String formatted = df.format(a); System.out.println(formatted); //123.45
Ввод |
Шаблон |
Вывод |
Примечание |
123.45 |
#.# |
123.5 |
Выводится до одного знака с округлением |
123.45 |
#.### |
123.45 |
Выводится все число без незначащих нулей |
123.45 |
#.0 |
123.5 |
Выводится до одного знака с округлением |
123.45 |
#.000 |
123.450 |
Выводится до третьего знака с незначащим нулем на конце |