-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathToDoApp.java
More file actions
134 lines (114 loc) · 3.44 KB
/
ToDoApp.java
File metadata and controls
134 lines (114 loc) · 3.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
import java.util.*;
// Class representing a single item in the to-do list
class Task {
int id;
String title;
boolean isCompleted;
public Task(int id, String title) {
this.id = id;
this.title = title;
this.isCompleted = false;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTitle() {
return title;
}
public boolean isCompleted() {
return isCompleted;
}
public void markCompleted() {
this.isCompleted = true;
}
@Override
public String toString() {
return "[" + (isCompleted ? "✓" : " ") + "] " + id + ". " + title;
}
}
// Class for managing tasks
class ToDoList {
ArrayList<Task> tasks;
public ToDoList() {
this.tasks = new ArrayList<>();
}
public void addTask(String title) {
int id = tasks.size() + 1;
tasks.add(new Task(id, title));
}
public void removeTask(int id) {
for (int i = 0; i < tasks.size(); i++) {
if (tasks.get(i).getId() == id) {
tasks.remove(i);
break;
}
}
for (int i = 0; i < tasks.size(); i++) {
tasks.get(i).setId(i + 1);
}
}
public void markTaskCompleted(int id) {
for (Task task : tasks) {
if (task.getId() == id) {
task.markCompleted();
break;
}
}
}
public void displayTasks() {
if (tasks.isEmpty()) {
System.out.println("No tasks available.");
} else {
for (Task task : tasks) {
System.out.println(task);
}
}
}
}
// Main application class
public class ToDoApp {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
ToDoList toDoList = new ToDoList();
while (true) {
System.out.println("\nTo-Do List Application");
System.out.println("1. Add Task");
System.out.println("2. Remove Task");
System.out.println("3. Mark Task as Completed");
System.out.println("4. View Tasks");
System.out.println("5. Exit");
System.out.print("Choose an option: ");
int choice = scanner.nextInt();
scanner.nextLine();
switch (choice) {
case 1:
System.out.print("Enter task title: ");
String title = scanner.nextLine();
toDoList.addTask(title);
break;
case 2:
System.out.print("Enter task ID to remove: ");
int removeId = scanner.nextInt();
toDoList.removeTask(removeId);
break;
case 3:
System.out.print("Enter task ID to mark as completed: ");
int completeId = scanner.nextInt();
toDoList.markTaskCompleted(completeId);
break;
case 4:
toDoList.displayTasks();
break;
case 5:
System.out.println("Exiting application...");
scanner.close();
return;
default:
System.out.println("Invalid choice. Try again.");
}
}
}
}