# data[].attributes.body
https://vertex-academy.com/tutorials/ru/rabota-so-skannerom-v-java/

# data[].attributes.attachment_link.readable_text
Данная статья:
Предлагаем вспомнить 2 примера из жизни, которые как нельзя кстати будут для изучения данной темы.

1. Когда мы путешествуем, в аэропорту наш багаж пропускают через ленту со сканером. Вот она была наша сумка на входе. Просканировал сканер сумку и работник аэропорта четко знает что ж мы там такое везём в ней.

2. Точно также работает сканнер в магазинах. Вот был штрих-код на входе, отсканировал штрих-код продавец и теперь всё-всё знает о продукте, который числится под этим штрих-кодом.

Чем то схожие задачи есть и в мире программирования на Java. Например, часто необходимо выполнить такие задачи:

Пользователь ввёл в консоли какое-то число. А программа должна считать с консоли, какое же число ввёл пользователь.

Пользователь ввёл в консоли какое-то слово. А программа должнасчитать с консоли, какое же слово ввёл пользователь.

Для решения таких задач в Java используется сканер (от англ. Scanner). Запомните: если что-то ввели в консоли, а нам надо считать что же именно ввели - используем сканер.

Итак, рассмотрим несколько примеров кода, после которых Вы:

1. Поймёте на практике как работает сканер. Всего в статье будет 6 примеров кода. Рекомендуем все примеры кода запускать на своём компьютере и на практике изучать как это работает.

2. Освоите 4 метода сканера:

next ();

nextLine ();

nextInt ();

nextDouble ();

Методы - это, грубо говоря, действия, которые может выполнять Scanner. На самом деле методов у сканера намного больше. Но на данном этапе Вам будет достаточно этих 4 методов. Ну что, поехали!!!

Допустим, мы хотим, чтоб пользователь ввёл в консоль любое целое число от 1 до 10 , а программа вывела ему ответ, какое именно число он ввёл.

Поскольку нам необходимо как бы "сосканировать", какое число ввёл пользователь, всё логично - нам понадобится сканер. Ниже приводим решение и комментарии к решению.

Если Вы попробуете запустить этот код на своём компьютере, то в консоли Вы увидите следующее:

Введите любое целое число от 1 до 10:

Затем, если Вы, например, введёте число 5, то в консоли будет следующее:

Введите любое целое число от 1 до 10: 5
Вы ввели число 5

В статье "Что такое библиотека Java?" мы с Вами разобрались, что в Java есть огромная библиотека протестированного кода - это уже готовые решения ко многим задачам, которые стоят перед программистами в их ежедневной работе. Также мы говорили о различных пакетах, классах и методах. Так вот, сейчас мы будем с Вами работать с пакетом java.util. В этом пакете есть класс Scanner. И у него есть методы (действия), которые позволяют работать с вводом и выводом информации в консоль.

Но чтобы мы смогли использовать в нашем коде класс Scanner, нам необходимо сделать 3 шага.

Шаг №1 - обязательно прописать вот такую строчку в коде

Зачем мы прописали эту строчку? С помощью этой строчки мы импортировали из пакета java.util класс Scanner. Если бы мы забыли это написать, сканер бы просто не работал. Также обратите внимание где мы прописали эту строчку.

Далее мы попросили пользователя ввести любое целое число от 1 до 10. Для этого написали

1. С помощью Scanner scan мы указали, что переменная будет иметь имя scan и будет относится к классу Scanner. Обязательно перед именем переменной прописать слово Scanner. А саму переменную можете называть, как хотите. Не обязательно scan.

2. Затем пишем = new Scanner (System.in);

Когда Вы дойдете до темы классов, Вы намного лучше поймёте эту конструкцию. На данном этапе достаточно этого для понимания.

1. С помощью int number мы объявили переменную с именем number, относящуюся к типу int. Почему именно тип int мы выбрали для переменной? Потому что по условию задачи пользователь должен ввести любое целое число от 1 до 10. Соответственно, мы ожидаем что введенное пользователем число будет целым. И поэтому для переменной number выбрали целочисленный тип int.

2. = scan. nextInt (); метод сканера nextInt() отвечает за то, чтобы считать введенное пользователем целое число с консоли. То есть с помощью scan.nextInt () мы считываем введенное целое число с консоли и присваиваем его переменной number.

Всё, теперь в переменной number у нас будет то число, которое введёт пользователь. Ура!

Затем нам нужно было вывести введённое пользователем число в консоль, и мы это сделали с помощью вот этой строчки

Попросите пользователя ввести 2 любых целых числ а . После этого необходимо вывести в консоль сумму этих 2 чисел
Решение:
Если Вы попробуете запустить этот код на своем компьютере, то в консоли Вы увидите следующее:

Введите 2 любых целых числа:

Затем, если Вы, например, введёте число 1 и число 2, то в консоли будет следующее:

Опять сделали 3 шага для подключения сканнера.

ШАГ №1: Импортировали сканнер из пакета java.util

Затем попросили пользователя ввести любых 2 целых числа

ШАГ №2 - объявляем сканер

1. С помощью Scanner k мы указали, что переменная будет иметь имя k и будет относится к классу Scanner. Обязательно перед именем переменной прописать слово Scanner. А саму переменную можете называть как хотите. Не обязательно k.

2. Затем пишем = new Scanner (System.in);

ШАГ №3 - считали число с консоли

Причем сделали это 2 раза, потому что мы же попросили пользователя ввести 2 числа.

Всё, теперь в переменной number1 и переменной number2 у нас будут те числа, которые введет пользователь.

И затем вывели на экран сумму number1 и number2

Допустим мы хотим, чтобы пользователь вводил в консоль любое слово или фразу, а мы могли бы вывести ему какое слово или фразу он ввёл.

Если Вы попробуете запустить этот код на своём компьютере, то в консоли Вы увидите следующее:

Введите любое слово или фразу:

Затем, если, например, пользователь введёт фразу "Я повелитель Сканера", то в консоли будет следующее:

Введите любое слово или фразу:
я повелитель Сканера
я повелитель Сканера
Комментарии:
Опять сделали 3 шага для подключения сканера.

ШАГ №1: Импортировали сканер из пакета java.util

Затем попросили пользователя ввести любое слово или фразу

ШАГ №3 - считали слово или фразу с консоли

1. С помощью String phrase1 мы объявили переменную с именем относящуюся к типу . Почему именно тип String мы выбрали для переменной? Потому что по условию задачи пользователь должен ввести слово или фразу. Соответственно, мы ожидаем, что пользователь введёт слово или фразу. И поэтому для переменной phrase1 мы выбрали тип String.

2. = sc. nextLine (); отвечает за то считывание введенного пользователем слова или фразы с консоли. То есть с помощью метода nextLine () мы считываем введенное слово или фразу с консоли и присваиваем его переменной phrase1.

Теперь в переменной phrase1 у нас будет то слово или фраза, которые введёт пользователь.

Обратите внимание: для целых чисел, как в примере №1 и №2, мы использовали метод nextInt (); Поскольку здесь мы уже ожидаем не целое число, а то что пользователь введет (слово или фразу), используется метод nextLine();

И далее выводим в консоль слово или фразу, которые ввел пользователь

Допустим мы хотим, чтобы пользователь вводил в консоль сразу несколько слов или фраз, а мы могли бы вывести ему одной строчкой, что же он ввёл.
Решение:
Если Вы попробуете запустить этот код на своём компьютере, то в консоли Вы увидите следующее:

Введите любые 2 слова или фразу:

Затем, если, например, пользователь введёт фразу "Я обожаю" и затем слово "Java" то в консоли будет следующее:

Я обожаю
Java
Я обожаю Java
Комментарии:
Опять сделали 3 шага для подключения сканера.

ШАГ №1: Импортировали сканер из пакета java.util

Затем попросили пользователя ввести любые 2 слова или фразу

ШАГ №3 - считали слово или фразу с консоли

1. С помощью и String phrase2 мы объявили переменные с именеми , относящиеся к типу String. Почему именно тип String мы выбрали для переменных? Потому что по условию задачи, пользователь должен ввести 2 любые слова или фразу. Соответственно, мы ожидаем что пользователь введёт 2 слова или фразу. И поэтому для переменных phrase1 и phrase2 мы выбрали тип String.

2. = sc. nextLine (); отвечает за то, чтобы считать введенное пользователем слово или фразу с консоли. То есть с помощью метода nextLine () мы считываем введенное слово или фразу с консоли и присваиваем его в переменную phrase1 и phrase2.

И далее вывели в консоль 2 слова или 2 фразы, которые ввёл пользователь

Обратите внимание: между phrase1 и phrase2 мы добавили " ". Если бы мы это не сделали, в консоль было бы выведено следующее:

Я обожаю
Java
Я обожаюJava

Допустим, Вы хотите, чтоб пользователь ввёл любое слово или фразу . И при этом, чтобы программа вывела в консоль всё до первого пробела.

Например, если пользователь введёт "Работа со сканнером - это круто", программа прочитает только слово "Работа". Потому что первый пробел появляется после слова "работа".

Или если пользователь, например, введёт "Я люблю Java", программа прочитает только слово "Я". Потому что первый пробел появляется после слова "Я".

В общем, логику Вы поняли. Смотрим как это будет в коде.

Если Вы попробуете запустить этот код на своём компьютере, то в консоли Вы увидите следующее:

Введите любое слово или фразу:

Затем, если, например, пользователь введёт фразу "Я повелитель Сканера", в в консоли будет следующее:

Введите любое слово или фразу:
я повелитель Сканера
я

Опять сделали 3 шага для подключения сканера.

ШАГ №1: Импортировали сканер из пакета java.util

Затем попросили пользователя ввести любое слово или фразу

ШАГ №3 - считали слово или фразу с консоли

1. С помощью String phrase1 мы объявили переменную с именем относящуюся к типу . Почему именно тип String мы выбрали для переменной? Потому что по условию задачи, пользователь должен ввести слово или фразу. Соответственно, мы ожидаем что пользователь введёт слово или фразу. И поэтому для переменной phrase1 мы выбрали тип String.

2. = sc. next (); считывает введенное пользователем слово или фразу с консоли до первого пробела. То есть с помощью метода next () мы считываем введенное слово или фразу с консоли до первого пробела и присваиваем его в переменную phrase1.

Теперь в переменной phrase1 у нас будет всё, что будет до первого пробела.

И далее выводим в консоль то, что будет до первого пробела.

Пример №6 - с методом nextDouble ()

Допустим Вы хотите, чтоб пользователь ввёл любое дробное число. А программа должна считать, какое же число ввёл пользователь, и вывести в консоль.

Если Вы попробуете запустить этот код на своём компьютере, то в консоли Вы увидите следующее:

Введите любое дробное число:

Затем, если Вы, например, введёте число 2,0 - в консоли будет следующее:

Введите любое дробное число:
2,0
Вы ввели число 2.0

Обратите внимание, что все числа типа double всегда пишутся в коде в формате 2.0. То есть через точку, а не через запятую.

А когда мы вводили число типа double в консоли, мы специально ввели в формате 2,0 - через запятую . При этом программа вывела нам в правильном формате 2.0 - "Вы ввели число 2.0"
Это баг. Просто нужно запомнить, что когда Вы вводите число типа double в консоли, надо его вводить через запятую. Если бы Вы ввели число в консоль в формате 2.0, программа выдала бы Вам ошибку!
В коде мы опять сделали 3 шага для подключения сканера.

ШАГ №1: Импортировали сканер из пакета java.util

Затем попросили пользователя ввести любое дробное число

ШАГ №2 - объявили сканнер

1. С помощью мы объявили переменную с именем number, относящуюся к типу double. Почему именно тип double мы выбрали для переменной? Потому что по условию задачи, пользователь должен ввести любое дробное число. Соответственно, мы ожидаем что введённое пользователем число будет дробным. И поэтому для переменной number выбрали тип double.

2. = scan. nextDouble (); метод сканера nexDouble() отвечает за то, чтобы считать введённое пользователем дробное число с консоли. То есть с помощью scan.nextDouble () мы считываем введённое дробное число и присваиваем его переменной number.

Всё, теперь в переменной number у нас будет то число, которое введёт пользователь

Затем нам нужно было вывести введённое пользователем число в консоль, и мы это сделали с помощью

Чтобы использовать сканер, необходимо сделать 3 шага:

Шаг №1: Сделать импорт сканера из пакета java.util

Шаг №2: Объявить сканер. Например:

Шаг №3: Вызвать соответствующий метод для считывания с консоли. Например:

Методы сканера, которые Вы уже знаете:

next (); - считывает введённую строку до первого пробела

nextLine (); - считывает всю введённую строку

nextInt (); - считывает введённое число int

nextDouble (); - считывает введённое число double

Также помним, что при использовании метода nextDouble () для дробных чисел, числа в консоли вводим через запятую, а не через точку. Например: 7,5
Надеемся, что наша статья была Вам полезна. Также есть возможность записаться на наши курсы по Java в Киеве. Обучаем с нуля. Детальную информацию Вы можете найти у нас на сайте.

# data[].attributes.attachment_link.title
Работа со сканером в Java (ввод и вывод данных) * Vertex Academy

# data[].attributes.attachment_link.description
Данная статья: Предлагаем вспомнить 2 примера из жизни, которые как нельзя кстати будут для изучения данной темы. Когда мы путешествуем, в аэропорту наш багаж пропускают через ленту со сканером. Вот она была наша сумка на входе. Просканировал сканер сумку и работник аэропорта четко знает что ж мы там такое везём в ней.

# data[].attributes.body
https://github.com/Java-Java-Bootcamp/2023-02-lessons

# data[].attributes.attachment_link.description
You can't perform that action at this time. You signed in with another tab or window. You signed out in another tab or window. Reload to refresh your session. Reload to refresh your session.

# data[].attributes.body
Запустите пример в вашей ide https://drive.google.com/file/d/1fsV0MKvScVcsxix4w7tX3y_9bJYpJSEQ/view?usp=share_link

# data[].attributes.body
https://openjdk.java.net/jeps/0

# data[].attributes.attachment_link.description
This JEP is the index of all JDK Enhancement Proposals, known as JEPs. See JEP 1 for an overview of the JEP Process.

# data[].attributes.body
Доступные версии: Ultimate, Community.
Можно скачать по ссылке: https://www.jetbrains.com/idea/download/#section=windows (выбираете вашу ОС)

# data[].attributes.attachment_link.readable_text
We've noticed that JavaScript is disabled in your web browser. Please enable JavaScript in order to take advantage of all the features of this website.
Download IntelliJ Idea Ultimate for your operating system: Windows, macOS, Linux.
Download IntelliJ Idea Community for your operating system: Windows, macOS, Linux.

# data[].attributes.attachment_link.title
Download IntelliJ IDEA: The Java IDE for Professional Developers by JetBrains

# data[].attributes.attachment_link.description
We've noticed that JavaScript is disabled in your web browser. Please enable JavaScript in order to take advantage of all the features of this website. Download IntelliJ Idea Ultimate for your operating system: Windows, macOS, Linux. Download IntelliJ Idea Community for your operating system: Windows, macOS, Linux.

# data[].attributes.headline
Обучающий ресурс для Intellij IDEA

# data[].attributes.subject
Обучающий ресурс для Intellij IDEA

# data[].attributes.body
https://www.jetbrains.com/ru-ru/idea/resources/

# data[].attributes.attachment_link.description
Интегрированная среда разработки, которая заботится о вашей продуктивности. Полная поддержка Java EE, глубокое понимание кода, продвинутый отладчик, рефакторинги - все это прямо из коробки

# data[].attributes.headline
Экосистема Java

# data[].attributes.subject
Экосистема Java

# data[].attributes.body
https://www.jetbrains.com/ru-ru/lp/devecosystem-2021/java/

# data[].attributes.attachment_link.provider_name
JetBrains: Developer Tools for Professionals and Teams

# data[].attributes.attachment_link.title
Разработка на Java — Инфографика «Экосистема разработки в 2021 году»

# data[].attributes.attachment_link.description
«Экосистема разработки в 2021 году» — это подробный отчет о том, что происходит в мире программирования: чем живут разработчики, какие языки, технологии и инструменты они используют.

# data[].attributes.body
https://www.baeldung.com/java-17-new-features

# data[].attributes.headline
Тренажер по git

# data[].attributes.subject
Тренажер по git

# data[].attributes.body
https://learngitbranching.js.org/?locale=ru_RU

# data[].attributes.attachment_link.readable_text
Основы

Удаленные репозитории

Введение

Хорошо подобранное введение в основные команды git

1: Знакомство с Git Commit

1

2

3

4

Едем дальше

Следующая порция абсолютной git-крутотенюшки. Проголодались?

1: Теряем голову, или detached HEAD

1

2

3

4

Перемещаем труды туда-сюда

Не стесняйтесь менять историю

1: Введение в Cherry-pick

1

2

Сборная солянка

Ассорти из приёмов работы с Git, хитростей и советов

1: Выберем один коммит.

1

2

3

4

5

Продвинутый уровень

Если ты смелый, ловкий, умелый – потренируйся тут

1: Rebase over 9000 раз

1

2

3

# data[].attributes.attachment_link.description
An interactive Git visualization tool to educate and challenge!

# data[].attributes.body
https://medium.com/geekculture/7-intellij-idea-tricks-that-made-my-life-easier-520300cae5a3

# data[].attributes.attachment_link.readable_text
Intellij IDEA is one of the most resourceful, efficient and easy to use IDE I have ever used in my life. It has made my coding more productive and is kind of like Swiss Army knife to provide me with all the features and tools I need to finish the task at hand effectively and seamlessly. I switched to IntelliJ just couple of years ago and I have never looked back. Although, the features it provides are...

# data[].attributes.attachment_link.title
7 IntelliJ IDEA tricks that made my life easier

# data[].attributes.attachment_link.description
Intellij IDEA is one of the most resourceful, efficient and easy to use IDE I have ever used in my life. It has made my coding more productive and is kind of like Swiss Army knife to provide me with...