在我的Android應用程序中,我試圖獲得一個有序數組。我有一個具有名稱字符串和日期字符串的數組數組。我試圖根據日期對名稱進行排序。是這樣的:如何按日期對數組進行排序?
private void sortList() {
String[][] namesAndDatesList = new String[][] {
new String[] {"name1", "05/03/2016 02:11:33")}
, new String[] {"name2", "04/03/2016 02:11:34"}
, new String[] {"name3", "04/03/2016 02:11:33")}
, new String[] {"name4", "02/03/2016 02:11:33")}
, new String[] {"name5", "05/03/2016 02:11:38")}
};
String[] namesList = Collections.sort(namesAndDatesList, new StringDateComparator());
}
class StringDateComparator implements Comparator<String>
{
SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy hh:mm:ss");
public int compare(params)
{
try {
// return something
} catch (ParseException e) {
e.printStackTrace();
}
return 0;
}
}
我會把它想輸出按日期和時間排序一樣的名字:
namesList = {name4, name3, name2, name1, name5}
我不知道如何做到這一點。
對於初學者,您正在嘗試做2件事。對數組進行排序,並從子數組中提取一個信息。 – njzk2
而那不可能?在一個總監?因爲那不是比較者所做的事情,所以我總是可以在排序之後提取姓名 – Mischa
。你需要先排序,然後提取你需要的值 – njzk2