मैं एक कार्य और टोडो कार्यक्रम बनाना चाहता हूं। मैं अलग वर्गों में कोड लिखा है। class Task
एक एकल आइटम का प्रतिनिधित्व करेगा जिसे पूरा करने की आवश्यकता है।
public class Task {
private String task;
private int priority;
private int workload;
public Task(String task, int priority, int workload) {
this.task = task; // Description of the task
this.priority = priority; // 1 = very important, 2 = important, 3 = unimportant, 4 = after learn
// Portuguese
this.workload = workload; // amount of time to complete the task
}
public String getPriority(String translation) {
if (priority == 1) {
translation = "very important";
}
if (priority == 2) {
translation = " important";
}
if (priority == 3) {
translation = "unimportant";
}
if (priority == 4) {
translation = " after learn German";
}
return translation;
}
public String toString() {
String translation = "";
return task + " takes " + workload + " minutes and has priority " + getPriority(translation);
}
}
जबकि class Todo
सभी कार्यों को व्यवस्थित करेगा।
public class Todo {
ArrayList<String> Todo = new ArrayList<>();
public void addTask(String description, int priority, int minutes) {
if (priority > 4 || priority < 1) {
System.out.println(description + " has invalid priority ");
}
if (minutes < 0) {
System.out.println(description + " has invalid workload ");
}
Todo.add(Task.class.getName());
}
public void getTodoList() {
Todo.forEach(item->System.out.println(Task.class.getName().toString()));
}
public void print() {
System.out.println("Todo:");
System.out.println("-----");
getTodoList();
if (Todo == null) {
System.out.println("You're all done for today! #TodoZero");
}
}
public static void main(String[] args) {
Task task;
Todo todo;
todo = new Todo();
todo.addTask("Go to gym", 2, 60);
todo.addTask("Read book", 1, 45);
todo.print();
System.out.print("");
}
}
आउटपुट:
Todo:
-----
Task
Task
लेकिन समस्या यह है कि Todo.print() method
उन कार्यों की सूची को प्रिंट नहीं कर सकता है जिन्हें टोडो में जोड़ा गया है। अपेक्षित आउटपुट इस तरह होना चाहिए:
Go to gym takes 60 minutes and has priority important
Read book takes 45 minutes and has priority very important
2 जवाब
वांछित आउटपुट प्राप्त करने के लिए आपके Todo Class में निम्नलिखित परिवर्तन आवश्यक हैं:
ArrayList<Task> Todo = new ArrayList<>(); // ArrayList of Tasks
public void addTask(String description, int priority, int minutes) {
if (priority > 4 || priority < 1) {
System.out.println(description + " has invalid priority ");
}
if (minutes < 0) {
System.out.println(description + " has invalid workload ");
}
Todo.add(new Task(description, priority,minutes)); // Add Task
}
public void getTodoList() {
// Iterate over Todo ArrayList
for (Task task : Todo){
System.out.println(task);
}
}
आपका आउटपुट सही है। आप अपनी सूची में कार्य नहीं जोड़ते हैं, आप वर्ग का नाम जोड़ते हैं। कार्य के निर्माता को todo.add () में कॉल करें
संबंधित सवाल
नए सवाल
java
जावा एक उच्च स्तरीय प्रोग्रामिंग भाषा है। इस टैग का उपयोग तब करें जब आपको भाषा का उपयोग करने या समझने में समस्या हो। इस टैग का उपयोग शायद ही कभी किया जाता है और इसका उपयोग अक्सर [वसंत], [वसंत-बूट], [जकार्ता-ई], [Android], [javafx], [हडूप], [श्रेणी] और [मावेन] के साथ किया जाता है।