Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_4 Головков И.Е. 12002108 КСМП.docx
Скачиваний:
2
Добавлен:
26.06.2024
Размер:
379.83 Кб
Скачать

// Класс Регион

package com.organizations; import java.io.Serializable; import java.util.Objects; public class Region implements Serializable { private String name; private int code; private static final long serialVersionUID = 8627957698211478577L; public Region(String name, int code) { this.name = name; this.code = code; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null || getClass() != obj.getClass()) return false; Region region = (Region) obj; return getCode() == region.getCode(); } @Override public int hashCode() { return Objects.hash(getCode()); } @Override public String toString() { return "Регион{" + "Название='" + name + '\'' + ", Номер региона=" + code + '}'; } public String getName() { return name; } public int getCode() { return code; } public String getRegion() { return name + ", " + code; } public void setCode(int code) { this.code = code; } public void setName(String name) { this.name = name; } }

// Модуль для работы с меню

module processing { requires organizations; exports com.processing; }

// Класс Меню для вывода команд

package com.processing; import java.util.Scanner; public class Menu { static Scanner read = new Scanner(System.in); menuProcessing menu = new menuProcessing(); public void menu() { int choice = 2; while (choice != 0) { showCommands(); choice = read.nextInt(); switch (choice) { case 1 -> menu.addNewCompany(); case 2 -> menu.addNewRegion(); case 3 -> menu.showAllCompanies(); case 4 -> menu.showBigCompanies(); case 5 -> menu.showMidCompanies(); case 6 -> menu.showSmallCompanies(); case 7 -> menu.showAllRegions(); case 8 -> menu.showCompaniesByRegion(); case 9 -> menu.writeCompaniesToFile(); case 10 -> menu.readCompaniesFromFile(); case 11 -> menu.writeRegionsToFile(); case 12 -> menu.readRegionsFromFile(); case 0 -> System.out.println("Завершение работы программы..."); default -> System.out.println("Неверный ввод"); } } } void showCommands() { System.out.println("\n Меню программы"); System.out.println("Добавить"); System.out.println(" 1. Добавить новую компанию"); System.out.println(" 2. Добавить новый регион"); System.out.println("Показать"); System.out.println(" 3. Показать все компании"); System.out.println(" 4. Показать большие компании"); System.out.println(" 5. Показать средние компании"); System.out.println(" 6. Показать малые компании"); System.out.println(" 7. Показать все регионы"); System.out.println(" 8. Показать компании с фильтром по региону"); System.out.println("Работа с файлами"); System.out.println(" 9. Записать компании в файл"); System.out.println(" 10. Считать компании из файла"); System.out.println(" 11. Записать регионы в файл"); System.out.println(" 12. Считать регионы из файла"); System.out.println("Работа с программой"); System.out.println(" 0. Завершить работу"); System.out.println("Введите номер нужной команды меню: "); } }