JavaRush
Акция
Java‑университет
Обучение
Курс
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/Засела на этой задаче. Количество попыток сдать на провер...
Ольга
17 уровень
  • 03.06.2020
  • 480просмотров
  • 7комментариев

Засела на этой задаче. Количество попыток сдать на проверку уже зашкаливает. Все по условию выполнила. Как видно из кода, при вводе пустой строки прерывается цикл, и начинается вывод содержимого карты. (Хотя именно это не выполяется по мнению валидатора.)В IDEA у меня все работает.

Вопрос по задаче Функциональности маловато!
Java Syntax,  10 уровень,  11 лекция
Решен

Программа вводит с клавиатуры пару (число и строку) и выводит их на экран.
Нужно сделать так, чтобы программа вводила с клавиатуры пары (число и строку) и сохраняла их в HashMap.

Ключевые требования:

  • Пустая строка - конец ввода данных.
  • Числа могут повторяться.
  • Строки всегда уникальны.
  • Введенные данные не должны потеряться!

Затем программа должна выводить содержание HashMap на экран.
Каждую пару - с новой строки.

Пример ввода:
1
Мама
2
Рама
1
Мыла

Пример вывода:
1 Мыла
2 Рама
1 Мама

Требования:
  • Программа должна считывать данные с клавиатуры.
  • Программа должна выводить текст на экран.
  • В методе main объяви переменную коллекции HashMap и сразу проинициализируй ee.
  • Программа должна помещать в HashMap пары считанные с клавиатуры.
  • Программа должна выводить на экран содержимое HashMap согласно условию. Ключ и значение разделены пробелом. Каждое значение с новой строки.
package com.javarush.task.task10.task1019; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; import java.util.HashMap; public class Solution { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); HashMap<String,Integer> map=new HashMap<>(); while (true){ String id1=reader.readLine(); if (id1.equals("")){ break; } int id = Integer.parseInt(id1); String name= reader.readLine(); while (map.containsKey(name)){ name= reader.readLine(); } map.put(name,id); } for (HashMap.Entry<String,Integer> pair:map.entrySet()){ int id=pair.getValue(); String name=pair.getKey(); System.out.println("Id=" + id + " Name=" + name); } } }
0
Комментарии (7)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Роман Дягелев
Уровень 15
3 июня 2020, 09:30
27 строка:
System.out.println("Id=" + id + " Name=" + name);
В условии есть пример вывода и он немного другой. Должны быть просто ключ и значение разделенные пробелом.
+1
Ольга
Уровень 17
3 июня 2020, 09:34
Спасибо, Роман. Как раз, почитав изрядно комментарии к задаче, нашла этот момент. Вы абсолютно правы! Из-за невнимательности 14 попыток!!! 😭
0
Ksenia Volkova Java Developer в DXC Master
3 июня 2020, 09:14
А если пустая строка вместо слова?
0
Ольга
Уровень 17
3 июня 2020, 09:33
Ксюша, спасибо, что всегда откликаетесь. Как раз слово там нужно, чтобы добавилось. Даже если оно пустое.
0
Ksenia Volkova Java Developer в DXC Master
3 июня 2020, 10:05
Я вообще не про добавление, а про прерывание цикла.
0
Ольга
Уровень 17
3 июня 2020, 10:09
Про это и речь. Если пустая срока в качестве слова, то нужно добавить в карту. Цикл прерывать только в случае, если пустая срока в качестве числа.
0
Ksenia Volkova Java Developer в DXC Master
3 июня 2020, 10:25
Пустая строка - конец ввода данных. Про то, что это касается только числа, ничего не сказано.
+1
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
  • Задачи-игры
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRush JavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
"Программистами не рождаются" © 2023 JavaRush
MastercardVisa
"Программистами не рождаются" © 2023 JavaRush
Этот веб-сайт использует данные cookie, чтобы настроить персонально под вас работу сервиса. Используя веб-сайт, вы даете согласие на применение данных cookie. Больше подробностей — в нашем Пользовательском соглашении.