我正在为java类项目制作一个待办事项列表。在jList中,我显示一个日期和一个表示日期的字符串,以及当天需要完成的工作。我也希望能够按照它们的日期对这些事件进行排序,因此应尽早出现的任务首先出现。我知道如何使用冒泡排序对日期列表进行排序,但我不知道如何将它应用到我的列表中,因为每个项目都包含日期和字符串。这是迄今为止的代码。有谁知道我将如何按顺序对日期进行排序,并将字符串附加到日期中。谢谢。使用多个元素对数组进行排序
public class ToDoListManager {
final int maxitems = 20;
int items = 0;
String[] toDoList = new String[20];
Date[] Dates = new Date[20];
String addItem(String toDo, Date date) {
if (items == maxitems) {
return ("No more Space");
} else if (toDo.equalsIgnoreCase("") || (toDo == null) || (date == null)) {
return ("All fields required");
} else if (items < maxitems) {
Dates[items] = date;
SimpleDateFormat dt1 = new SimpleDateFormat("yyyy-MM-dd");
toDoList[items] = "On " + dt1.format(date) + " " + toDo;
items = items + 1;
return (toDo + " Was Added to the List");
}
return null;
}
void Order(Date[] dates) {
Date temp;
boolean fixed = false;
while (fixed == false) {
fixed = true;
for (int i = 0; i < dates.length - 1; i++) {
if (dates[i].before(dates[i + 1])) {
temp = dates[i + 1];
dates[i + 1] = dates[i];
dates[i] = temp;
fixed = false;
}
}
}
System.out.println(dates);
}
String[] getItems() {
String[] displayList = new String[items];
for (int i = 0; i < items; i++) {
displayList[i] = toDoList[i];
}
return displayList;
}
}
考虑从创建代表您的任务的对象开始,该对象包含日期和字符串。 – njzk2
请勿使用[平行集合](https://codeblog.jonskeet.uk/2014/06/03/anti-pattern-parallel-collections/)。定义一个'ToDo'类。 – Michael