/
D_Smile
/
todolist-java
Обзор
Документация
Войти
/
D_Smile
/
todolist-java
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/main/java/bro/todo/TodoList.java
101 строка
4 KB
DimkaSmile
05.05.2026
05 май 2026, 21:26
05 май 2026, 21:26
3a379ab
Код
Авторство
О чём код?
package bro.todo; import java.util.ArrayList; public class TodoList { //=====Поля===== String name; // название списка (например, "Мои дела") ArrayList<Task> tasks; // список задач (динамический массив (array - массив в Java, task - задача)) //=====Конструкторы====== public TodoList(String name) { this.name = name; this.tasks = new ArrayList<>(); // создаем пустой динамически созданный объект типа Task } //=====Геттер и сеттер======= public String getName() {return name;} public void setName(String name) {this.name = name;} public int getTasksCount() {return tasks.size();} //=====Методы======== //---Добавить новую задачу--- public void addTask(Task task) { tasks.add(task); System.out.println("Задача добавлена " + task.getTitle()); } // Удалить существующую задачу. public boolean removeTask(String title) { // Запускаем цикл по всем задачам for(int i = 0; i < tasks.size(); i++) { Task current = tasks.get(i); // Сравниваем название задачи через .equals if (current.getTitle().equals(title)) { tasks.remove(i); System.out.println("Задача - " + title + " удалена!"); return true; } } // Выводи информацию если задача не найдена System.out.println("Задача - " + title + " не найдена!"); return false; } //-----Найти задачу по названию---- public Task findTaskByTitle(String title) { //-----Запуск цикла---- for(int i = 0; i < tasks.size(); i++) { Task current = tasks.get(i); //-----Сравниваем название задачи через .equal---- if(current.getTitle().equals(title)) { //tasks.get(i); System.out.println("Задача " + title + " найдена!"); //----Возвращаем текущий элемент массива------ return current; } } System.out.println("Задача " + title + " не найдена."); //------Если ничего нет то возвращается значение Null------- return null; } //-----Пометить задач как выполненную--------- public boolean markTaskAsDone(String title) { // Это означает:«Эй, Java, запусти метод findTaskByTitle, передай ему title (название). Результат сохрани в переменную foundTask (это будет либо объект Task, либо null).» Task foundTask = findTaskByTitle(title); if (foundTask != null) { foundTask.markAsDone(); // У найденной задачи foundTask возьми метод markAsDone и отметь её как выполненную. Отмечает найденную задачу как выполненную (меняет её статус с false на true). return true; } else { return false; } } //-----Выводим все невыполненные задачи---- public void showPendingTasks () { boolean foundAny = false; //----Переменная для проверки наличия невыполненных задач----- //-----Запускаем цикл для перебора всех элементов списка for (int i = 0; i < tasks.size(); i++) { Task current = tasks.get(i); //-----Находим все невыполненные задачи. ----- if(!current.isDone()) { //---Вывести информацию о задаче---- current.printInfo(); //-------Найдено хотя бы одно задание--------- foundAny = true; } } if (!foundAny) { System.out.printf("Нет незавершённых дел.\n"); } } }