/
msigin77
/
Home_work11
Обзор
Документация
Войти
/
msigin77
/
Home_work11
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Main.java
137 строк
5 KB
msigin77
Д\з11
21 дек 2025, 11:41
21 дек 2025, 11:41
bb02023
Код
Авторство
О чём код?
import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Main { public static void main(String[] args) { //System.out.println("Hello world!"); List<String> tasks = new ArrayList<>(); Scanner scanner = new Scanner(System.in); while (true) { System.out.println("Выберите операцию:"); System.out.println("0. Выход из программы"); System.out.println("1. Добавить дело"); System.out.println("2. Показать дела"); System.out.println("3. Удалить дело по номеру"); System.out.println("4. Удалить дело по названию"); System.out.print("Ваш выбор: "); int choice; try { choice = Integer.parseInt(scanner.nextLine()); } catch (NumberFormatException e) { System.out.println("Пожалуйста, введите число от 0 до 4!"); continue; } switch (choice) { case 0: System.out.println("До свидания!"); scanner.close(); return; case 1: addTask(tasks, scanner); break; case 2: showTasks(tasks); break; case 3: removeTaskByNumber(tasks, scanner); break; case 4: removeTaskByName(tasks, scanner); break; default: System.out.println("Неверный выбор! Пожалуйста, введите число от 0 до 4."); } // После каждой операции показываем список дел if (choice != 2) { // Не показываем дважды при выборе "Показать дела" showTasks(tasks); } } } private static void addTask(List<String> tasks, Scanner scanner) { System.out.print("Введите название задачи: "); String task = scanner.nextLine().trim(); if (task.isEmpty()) { System.out.println("Задача не может быть пустой!"); return; } // Проверяем, нет ли уже такой задачи (уникальность) if (tasks.contains(task)) { System.out.println("Такая задача уже существует в списке!"); return; } tasks.add(task); System.out.println("Добавлено!"); } private static void showTasks(List<String> tasks) { if (tasks.isEmpty()) { System.out.println("Ваш список дел пуст."); return; } System.out.println("Ваш список дел:"); for (int i = 0; i < tasks.size(); i++) { System.out.println((i + 1) + ". " + tasks.get(i)); } } private static void removeTaskByNumber(List<String> tasks, Scanner scanner) { if (tasks.isEmpty()) { System.out.println("Список дел пуст, удалять нечего."); return; } System.out.print("Введите номер для удаления: "); int number; try { number = Integer.parseInt(scanner.nextLine()); } catch (NumberFormatException e) { System.out.println("Пожалуйста, введите корректный номер!"); return; } if (number < 1 || number > tasks.size()) { System.out.println("Нет дела с таким номером! Доступные номера: 1-" + tasks.size()); return; } tasks.remove(number - 1); System.out.println("Удалено!"); } private static void removeTaskByName(List<String> tasks, Scanner scanner) { if (tasks.isEmpty()) { System.out.println("Список дел пуст, удалять нечего."); return; } System.out.print("Введите задачу для удаления: "); String taskToRemove = scanner.nextLine().trim(); if (taskToRemove.isEmpty()) { System.out.println("Задача для удаления не может быть пустой!"); return; } if (tasks.remove(taskToRemove)) { System.out.println("Удалено!"); } else { System.out.println("Нет дела с таким названием!"); } } }