Консоль (console) в Java обеспечивает простое и удобное взаимодействия с пользователем. С помощью консоли можно выводить какую-нибудь информацию либо, напротив, используя консоль, считывать данные. В этой статье будет рассказано о том, как осуществляется ввод и вывод данных в консоли Java.
Чтобы обеспечивать взаимодействие с консолью, в языке программирования Java используют класс System.
Вывод на консоль в Java
Чтобы создать потока вывода в вышеупомянутый класс System, вам понадобится специальный объект out. В нём определен метод println, обеспечивающий вывод значения на консоль и перевод курсора консоли на другую строку.
Рассмотрим практический пример с Hello world:
public class Main < public static void main(String[] args) < System.out.println(«Привет, мир!»); System.out.println(«Пока, мир. «); >>
Что здесь происходит? В метод println осуществляется передача значения (в нашем случае это строка), которое пользователь желает вывести в консоль Java. Консольный вывод данных в Джава будет следующий:
Уроки C# .NET Windows Forms / #1 — Создание приложения на C# с SQL (базами данных)
Привет, мир! Пока, мир.
Выполнять перевод строки не обязательно. Если необходимость в этом отсутствует, применяют метод System.out.print() . Он аналогичен println, но перевод каретки на следующую строку не выполняется.
public class Main < public static void main(String[] args) < System.out.print(«Привет, мир!»); System.out.print(«Пока, мир. «); >>
Вывод в консоли Java:
Привет, мир!Пока, мир.
Однако никто не мешает, используя System.out.print, всё же выполнить перенос на следующую строку. Как вариант — использование n:
System.out.print(«Привет, мир! n»);
Также есть возможность подставить в строку Ява данные, которые объявлены в переменных. Вот, как это реализуется:
public class Main < public static void main(String[] args) < int i = 10; int y = 99; System.out.println(«i=» + i + «; y=» + y); >>
В консоли увидим:
i=10; y=99
Ещё в Java существует функция, предназначенная для форматирования вывода в консоли, — System.out.printf() . При использовании со спецификаторами, она позволяет добиться нужного формата вывода.
Спецификаторы: • %d — для вывода в консоль целочисленных значений; • %x — для 16-ричных чисел; • %f — выводятся числа с плавающей точкой; • %e — для чисел в экспоненциальной форме (1.3e+01); • %c — вывод в консоль одиночного символа; • %s — вывод в консоль строковых значений.
Рассмотрим, как это функционирует на практике:
public class Main < public static void main(String[] args) < String name = «Bob»; int age = 40; float height = 1.8f; System.out.printf(«Name: %s Age: %d Height: %.2f n», name, age, height); >>
Когда осуществляется вывод в консоль Java значений с плавающей точкой, есть возможность задать количество знаков после запятой. Спецификатор %.2f (точнее, «.2») определяет, что будет 2 знака после запятой. Вывод в консоль Java будет следующим:
Name: Bob Age: 40 Height: 1.80
Ввод с консоли Java или как ввести данные с консоли Джавы
Чтобы обеспечить ввод с консоли Java, в классе System есть объект in. Именно через объект System.in работать не очень удобно, поэтому часто применяют класс Scanner. Он уже, в свою очередь, как раз таки и применяет System.in.
Рассмотрим практический пример:
import java.util.Scanner; public class Main < public static void main(String[] args) < Scanner in = new Scanner(System.in); System.out.print(«Введите любой номер: «); int num = in.nextInt(); System.out.printf(«Ваш номер: %d n», num); in.close(); >>
Сам по себе класс Scanner хранится в пакете java.util, поэтому в начале кода мы выполняем его импорт посредством команды import java.util.Scanner.
Для создания непосредственно объекта Scanner в его конструктор осуществляется передача объекта System.in. Далее можно получать значения. В нашей мини-программе сначала выводится просьба ввести номер, а потом введённое пользователем число помещается в переменную num (для получения введённого значения задействуется метод in.nextInt() , возвращающий набранное на клавиатуре целочисленное значение.
Лучше всего попробовать работу этой программы с помощью одного из многочисленных онлайн-компиляторов.
Работать она будет простейшим образом: 1. Сначала вы увидите сообщение в консоли «Введите любой номер:». 2. После ввода числа (пускай это будет 8) в консоли появится второе сообщение — «Ваш номер: 8».
Для класса Scanner предусмотрены и другие методы: • next() — для считывания введённой строки до первого пробела; • nextLine() — для всей введённой строки; • nextInt() — считывает введённое число int; • nextDouble() — для double; • nextBoolean() — для boolean; • nextByte() — для byte; • nextFloat() — для float; • nextShort() — для short.
Давайте напишем простую программу, обеспечивающую ввод информационных данных о человеке в консоль Java:
import java.util.Scanner; public class Main < public static void main(String[] args) < Scanner in = new Scanner(System.in); System.out.print(«Введите имя: «); String name = in.nextLine(); System.out.print(«Введите возраст: «); int age = in.nextInt(); System.out.print(«Введите вес: «); float height = in.nextFloat(); System.out.printf(«Name: %s Age: %d Height: %.1f n», name, age, height); in.close(); >>
В этой программке пользователь последовательно вводит данные разных типов: String, int и float. Потом вся информация выводится в консоль Java:
Введите имя: Андрей Введите возраст: 39 Введите вес: 89 Name: Андрей Age: 39 Height: 89.0
Вот и всё. Это базовые вещи, если же вас интересуют более продвинутые знания, записывайтесь на курс OTUS в Москве:
Источник: otus.ru
Пишем приложение на Django. Часть 1. Устанавливаем фреймворк, настраиваем движок и записи
Разберёмся в том, как устроен фреймворк Django, как он работает, и напишем своё первое приложение.
Иллюстрация: rawpixel.com / Freepik / mulyadi / Sebastian Dumitru / Unsplash / Дима Руденок для Skillbox Media
Антон Яценко
Изучает Python, его библиотеки и занимается анализом данных. Любит путешествовать в горах.
Django — это фреймворк для веб-разработки, написанный на Python в 2005 году. Он позволяет создавать сайты и веб-приложения разной сложности — от личного блога до аудиоплатформы (на нём собран Spotify). От других фреймворков Django отличается модульностью и простотой освоения.
В этой статье мы увидим, как создавать веб-приложения на Django: рассмотрим его структуру и напишем первое веб-приложение — движок для блога, который умеет публиковать и редактировать записи. Это первая часть урока по Django — во второй мы будем настраивать админку и подтюним внешний вид наших постов.
Для чего учить Django
Согласно исследованию Stack Overflow за 2022 год, Django занимает девятое место среди всех веб-фреймворков, обгоняя, например, популярные Spring и Ruby on Rails.
На Django работают многие известные сервисы — например, «Инстаграм»*, Pinterest, Spotify, Last.fm и сайт Mozilla. Однако его используют не только в энтерпрайзе: нередко на нём собирают личные сайты: блоги, фотогалереи, портфолио и так далее.
Одно из главных преимуществ Django — принцип DRY (don’t repeat yourself): единожды написанный код можно повторно использовать в различных проектах. Поэтому Django часто сравнивают с конструктором Lego.
Кроме принципа DRY Django имеет и другие преимущества:
- понятый и простой синтаксис (он написан на Python);
- большое количество готовых шаблонов и модулей, которые облегчают разработку и позволяют не использовать внешние библиотеки или расширения. Это помогает избегать конфликтов между ними после обновлений;
- подробная документация и большое комьюнити. Если у вас появился какой-то вопрос о коде, то вы легко найдёте на него ответ на Stack Overflow или других сайтах.
Структура Django
Фреймворк основывается на четырёх главных компонентах:
- Модели (Models) — взаимодействуют с базой данных и достают из неё ту информацию, которую необходимо отобразить в браузере.
- Представления (Views) — обрабатывают запрос и обращаются к модели, сообщая ей, какую информацию необходимо достать из базы данных.
- Шаблоны (Templates) — показывают, каким именно образом необходимо показать информацию, полученную из базы данных.
- URL-маршруты (URL dispatcher) — перенаправляют HTTP-запрос от браузера в представления.
Сейчас структура может казаться запутанной, но на самом деле она простая — мы разберёмся с ней на практике, и вы быстро всё поймёте.
Устанавливаем Django и настраиваем виртуальное окружение
Прежде чем перейти к установке Django и virtualenv, необходимо убедиться в том, что у вас уже установлен Python. Проверить это и узнать версию Python можно с помощью терминала. Откройте Terminal в своей IDE или операционной системе и введите команду:
Если же Python не установлен, то можно воспользоваться другим нашим руководством. После этого переходим к настройке виртуального окружения.
Виртуальное окружение, создаваемое с помощью virtualenv, — это специальный инструмент, который помогает управлять зависимостями и изолировать проекты друг от друга: например, устанавливать дополнительные библиотеки и пакеты локально для каждого проекта, а не глобально для всего компьютера. Установить virtualenv тоже можно через терминал:
Сам фреймворк Django тоже устанавливается с помощью терминала:
В последней строке видно, что установка прошла успешно. При этом мы установили не только Django последней версии, но и ещё две библиотеки:
- asgiref — интерфейс для взаимодействия с асинхронными веб-сервисами, платформами и приложениями на Python;
- sqlparse — простой парсер для работы с базами данных SQL.
Итак, убедитесь, что вы сделали всё по чек-листу:
- проверили, что у вас есть Python;
- создали директорию и развернули в ней виртуальное окружение с помощью virtualenv;
- установили в ту же папку Django.
Теперь можно переходить к созданию самого проекта.
Разобраться в основных понятиях фреймворка Django лучше всего на практике. Напишем веб-приложение для небольшого блога с текстовыми записями и поговорим про его работу. Весь процесс разобьём на семь простых шагов — да здравствует модульность 🙂
Шаг 1
Готовим и настраиваем окружение
Проще всего создать базовую структуру проекта с помощью терминала:
ИнтеллигенцияX
Базы данных нужны в разных областях, и просто необходимы, если нужно накапливать и хранить различную информацию.
В этом уроке я покажу, как сделать простую базу данных.
Простая база данных «Телефонная книжка»
В качестве хранилища данных будем использовать обычную таблицу tab1.dbf с полями name и tel, где будем хранить ФИО человека и его телефон.
Сама табличка tab1.dbf может быть создана разными способами, или может быть табличкой какой нибудь учетной системы, например 1С.
В принципе, аналогичным образом можно использовать любое хранилище, например SQL сервер или базу Microsoft Access.
Таблица tab1.dbf находится в папке с исходниками. В описанном ниже примере эта таблица лежит в корне диска D.
Сначала откройте Администратор источника данных ODBC, и в закладке Пользовательский DNS нажмите кнопку Добавить.
В открывшемся окне выберите Microsoft dBase Driver (.dbf) и нажмите Готово.
В Установках драйвера ODBC для dBase придумайте название источника данных (у нас «dbf»).
Затем снимите галочку «Использовать текущий каталог » и выберите место, где лежит наша таблица tab1.dbf, в примере это D:
После ввода имени источника данных и каталога нажмите ОК, и затем в Администраторе источника данных ODBC нажмите OK, Администраторе источника данных ODBC закроется.
Следующим этапом создаем новый проект.
На форме размещаем два элемента для ввода ФИО и телефона — Edit1 и Edit2, и Label1 и Label2 для обозначения названий этих полей.
Затем размещаем две кнопки — Button1 и Button2.
Затем в свойство Caption элементов вводим названия элементов Label1 — ФИО, Label2-Телефон.
Для кнопок в свойство Caption вносим для Button1-Добавить, в ней будет код для добавления записей в базу, и для Button2-Удалить, в ней будет код для удаления записей.
Затем из закладки Data Access на панели компонентов помещаем на форму компонент DataSource1.
Затем переходим в закладку BDE и оттуда помещаем на форму компонент Table1.
Затем переходим в закладку Data Controls и оттуда помещаем на форму компонент DBGrid1.
Затем мышкой выделите компонент DataSource1 и на панели Object Inspector установите для него свойство DataSet равным значению Table1 (можно выбрать из выпадающего списка).
Затем раскройте плюсиком ветку DataSet на панели Object Inspector и для свойства DatabaseName выберите источник данных dbf, который мы добавили в источники данных ODBC в самом начале урока.
Затем для свойства TableName выберите нашу табличку tab1, которую мы добавили как источник данных «dbf» в самом начале урока.
Для компонента Table1 параметр DatabaseName должен стоять «dbf», а параметр TableName должен быть равен значению «tab1».
Для компонента DBGrid1 параметр DataSource должен стоять «DataSource1», а параметр DataSet должен быть «Table1».
Затем в свойствах компонента DataSource1 сделаем свойство Active равным True, сделав этот источник данных активным.
Теперь вставим код в кнопки.
Сначала дважды щелкнем мышкой по кнопке Добавить и в событие Button1Click вставим следующий код:
procedure TForm1.Button1Click(Sender: TObject); begin with Table1 do begin Insert; FieldByName(‘name’).AsString := trim(Edit1.Text); FieldByName(‘tel’).AsString := trim(Edit2.Text); Post; end; Edit1.Text:=»; Edit2.Text:=»; end;
Это код для добавления строчки в таблицу tab1.
Сначала добавляется строчка со значениями ФИО и Телефона, потом эти два поля ввода делаются снова пустыми, для следующего ввода.
Потом дважды щелкнем мышкой по кнопке Удалить и в событие Button2Click вставим следующий код:
procedure TForm1.Button2Click(Sender: TObject); begin with table1 do begin Delete; end; end;
Для полноты картины добавим еще два компонента, Edit3 и Button3 И сделаем из них поиск по таблице.
Дважды щелкнем мышкой по кнопке «поиск» и в событие Button3Click вставим следующий код:
procedure TForm1.Button3Click(Sender: TObject); begin if trim(Edit3.Text)=» then begin Table1.Filtered:=false; end else begin Table1.Filter:=’name=’+chr(39)+trim(Edit3.Text)+chr(39); Table1.Filtered:=true; end; end;