Напишите программу, которая будет работать как телефонная книга:
Если вводим новое имя, программа просит ввести номер телефона и запоминает его.
Если новый номер телефона — просит ввести имя и также запоминает.
Если вводим существующее имя или номер телефона, программа выводит телефон(ы) или имя абонента соответственно.
При вводе команды LIST программа печатает в консоль список всех абонентов в алфавитном порядке с номерами.
Определяйте имя и телефон с помощью регулярных выражений.
Подумайте, что выбрать в качестве ключа и значения для Map, и выберите лучший, по вашему мнению, вариант. Опишите, какие минусы и плюсы видите в своём выборе.
Для работы с данными телефонной книги в проекте находится класс PhoneBook, который должен отвечать за хранение и работу с абонентами. Реализуйте все методы и проверьте класс с помощью существующих тестов. Вы можете добавлять дополнительные методы в класс.
Команды вводятся пользователем в консоль одной строкой.
Примеры работы с телефонной книгой (жирным шрифтом выделен ввод пользователя)
Введите номер, имя или команду:
Маша
Такого имени в телефонной книге нет.
Введите номер телефона для абонента “Маша”:
79001234567
Контакт сохранен!
Введите номер, имя или команду:
79007654321
Такого номера нет в телефонной книге.
Введите имя абонента для номера “79007654321”:
Маша
Контакт сохранен
Введите номер, имя или команду:
Nfif@
Неверный формат ввода
Введите номер, имя или команду:
LIST
Маша - 79001234567, 79007654321
Есть частично рабочий код, его прикрепляю, он не проходит тест на добавление двух номеров для одного контакта. Необходимо либо изменить этот код, либо написать новый. Необходимые тесты для успешного выполнения задания также прикрепляю.
| Гарантия на работу | 1 год |
| Средний балл | 4.53 |
| Стоимость | Назначаете сами |
| Эксперт | Выбираете сами |
| Уникальность работы | от 70% |