gpt4 book ai didi

java - 如何在 ArrayList 中搜索元素? - java

转载 作者:行者123 更新时间:2023-12-04 09:34:40 24 4
gpt4 key购买 nike

我在 Java 中创建了一个待办事项列表程序,您可以在其中添加、删除和查看具有特定名称、日期、时间等的任务。
但是,我试图添加一个选项,当用户选择“5”时,他们可以输入日期,如果有任何任务落在该特定日期,它们将被列出。
例如:

----------------------
Main Menu
----------------------
1. Add a task
2. Delete a task
3. Delete all tasks
4. List all tasks
5. Search for a task
6. Exit the program

Enter choice: 5

Enter a date: 20/10/2020

Here are the tasks for 20/10/2020:

-task1-
-task2-
etc...
到目前为止,当我这样做时,即使在该特定日期确实存在任务,也不会返回任何任务。
到目前为止,这是我的代码:
public void searchTasks() throws ParseException {
System.out.println("Search for a task: ");
System.out.println("----------------------");
Scanner keyboard = new Scanner(System.in);
System.out.print("Enter a date (dd/mm/yyyy): ");

Scanner scanner = new Scanner(System.in);
String date = scanner.nextLine();

LocalDate theDate = LocalDate.parse(date, formatter);
String backToStr = formatter.format(theDate);

boolean found = false;
for (String task: currentList){
String searched_date = task.split(", ")[1];
if (searched_date.equals(backToStr)){
found = true;
System.out.println();
System.out.println("----------------------");
System.out.println("Here are the tasks on " + backToStr + ":");
System.out.println("----------------------");
System.out.println(task);
}
}
if (!found){ // if there was no task found for the specified date
System.out.println("No tasks found on this date");
}

}

最佳答案

添加 theItem 时至 currentList使用 currentList.add(theItem) ,您正在添加项目的所有信息(标题、日期、时间……)。
当您使用 contains(date) 搜索任务时,您只是在搜索日期。因此,幕后发生的事情是将日期(例如,“20/10/2020”)与更长的时间(例如,“myTitle、20/10/2020、晚上 10 点……”)进行比较,而他们没有匹配,因此没有显示任务。

关于java - 如何在 ArrayList 中搜索元素? - java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62650051/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com