/
olya_slabun
/
Hw_java_list
Обзор
Документация
Войти
/
olya_slabun
/
Hw_java_list
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
src/TodoList.java
109 строк
4 KB
Olya Slabun
Add todo
12 авг 2025, 17:28
12 авг 2025, 17:28
7107722
Код
Авторство
О чём код?
import java.util.ArrayList; import java.util.Locale; import java.util.Scanner; public class TodoList { private final ArrayList<String> todos = new ArrayList<>(); public void add(Scanner in) { System.out.print("\nВведите название задачи: "); String original = in.nextLine().trim(); if (original.isEmpty()) { System.out.println("Пустые задачи не добавляем."); return; } boolean exists = false; for (String t : todos) { if (t.trim().equalsIgnoreCase(original)) { exists = true; break; } } if (exists) { System.out.println("Такая задача уже есть. Не добавлено."); return; } todos.add(original); System.out.println("Добавлено!"); } public void print() { System.out.println("\nВаш список дел:"); if (todos.isEmpty()) { System.out.println("(пусто)"); return; } for (int i = 0; i < todos.size(); i++) { System.out.println((i + 1) + ". " + todos.get(i)); } } public void deleteByNumber(Scanner in) { if (todos.isEmpty()) { System.out.println("Список пуст."); return; } System.out.print("\nВведите номер для удаления: "); String s = in.nextLine().trim(); int num; try { num = Integer.parseInt(s); } catch (NumberFormatException e) { System.out.println("Введите число."); return; } if (num < 1 || num > todos.size()) { System.out.println("Нет дела с таким номером."); return; } todos.remove(num - 1); System.out.println("Удалено!"); } public void deleteByExactText(Scanner in) { if (todos.isEmpty()) { System.out.println("Список пуст."); return; } System.out.print("\nВведите задачу для удаления: "); String text = in.nextLine(); int idx = -1; for (int i = 0; i < todos.size(); i++) { if (todos.get(i).equals(text)) { idx = i; break; } } if (idx == -1) { System.out.println("Нет дела с таким текстом."); } else { todos.remove(idx); System.out.println("Удалено!"); } } public void deleteByKeyword(Scanner in) { if (todos.isEmpty()) { System.out.println("Список пуст."); return; } System.out.print("\nВведите ключевое слово: "); String kw = in.nextLine().trim().toLowerCase(Locale.ROOT); if (kw.isEmpty()) { System.out.println("Пустое слово — ничего не удалено."); return; } boolean removedAny = false; for (int i = todos.size() - 1; i >= 0; i--) { if (todos.get(i).toLowerCase(Locale.ROOT).contains(kw)) { todos.remove(i); removedAny = true; } } if (removedAny) { System.out.println("Удалены все задачи, содержащие ключевое слово."); } else { System.out.println("Подходящих задач не найдено."); } } }