Ввод и вывод с помощью диалоговых окон
Графические средства ввода и вывода содержатся в пакете javax.swing, который подключается к программе командой
import javax.swing.*;
Этот пакет содержит класс JOptionPane, позволяющий создавать и отображать диалоговые окна четырех типов:
- для ввода данных showInputDialog(),
- для вывода информационных сообщений showMessageDialog(),
- для получения подтверждения определенных действий,
- для выполнения настроек.
Ввод данных диалоговым окном showInputDialog() осуществляется с помощью переменной-строки:
String input, output; // имя может быть любым
input=JOptionPane.showInputDialog("Введите значение n:”);
При этом на экране появится окно ввода:
В поле ввода нужно напечатать необходимое значение и нажать на кнопку OK:
При этом переменная-строка input (имя может быть любым) примет значение строки ”15”. Осталось перевести эту строку в нужный тип данных:
int n;
n=Integer.parseInt(input); // перевод строки в данное целого типа
Для вывода данных используется окно вывода:
output="Введенное значение переменной n:\n" + n; // строка вывода
JOptionPane.showMessageDialog(null, output);
При этом на экране появится окно вывода:
Первый аргумент метода null – обязателен, второй аргумент output (имя может быть любым) – выводимая строка, которая может содержать текст, ESC-последовательности (\n) и выводимые данные.
Третьим и четвертым аргументами могут быть заголовок окна и тип значка (рисунка) в окне:
String title=”Входные данные”; // заголовок окна
int type=JOptionPane.ERROR_MESSAGE; // тип значка
output="Введенное значение переменной n:\n" + n;
JOptionPane.showMessageDialog(null, output, title, type);
В данном случае значок сообщает об ошибке (JOptionPane.ERROR_MESSAGE).
Кроме такого значка, могут быть следующие:
информационный (по умолчанию) JOptionPane.INFORMATION_MESSAGE;
знак вопросаJOptionPane.QUESTION_MESSAGE;
предупреждениеJOptionPane.WARNING_MESSAGE;
без значкаJOptionPane.PLAIN_MESSAGE;
Консольный вывод
Консольный вывод (вывод на экран терминала) осуществляется методами print(), println(), printf(). Для этого используется статическое поле out класса System:
System.out.println("Лабораторная работа №1");
System.out.println("Вариант №10");
System.out.println("Группа ПИ-12-1");
System.out.println("Студент Пупкин Василий");
System.out.println(); //пропуск пустой строки
В окне вывода появится:
Лабораторная работа №1
Вариант №10
Группа ПИ-12-1
Студент Пупкин Василий
С помощью метода print() (println() – с переходом на новую строку) можно выводить на консоль данные любых типов: символы, строки, целые и действительные числа, логические значения, объекты:
int n=-5;
double x=0.314259265e+1;
System.out.println(“n=” + n); // бесформатный вывод
System.out.println(“x=” + x);
В окне вывода появится:
n=-5
x=3.14259265// точность вывода – восемь цифр дробной части
Метод printf() позволяет выполнять форматированный вывод. Он полностью аналогичен функции printf() языка Си:
System.out.printf(“формат”, аргументы);
где аргументы – список вывода – имена переменных, значения которых выводятся,
формат – представляет собой строку, содержащую сообщения, которые должны быть выведены на экран, управляющие символы (ESC-последовательности) и спецификации преобразований выводимых данных (аргументов):
System.out.printf(“\nJava – язык программирования XXI века\n”);
При выполнении этой функции курсор в окне вывода перейдет на новую строку (\n), будет выведено сообщение: