假設你有String
的ArrayList
對象,使得每個字符串格式dd-MM-yyyy
稱爲dateStrings
。
首先創建SimpleDateFormat
對象,該對象將作爲將String
轉換爲Date
對象並返回的基礎。
SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
那麼你String
的ArrayList
對象轉換爲Date
的ArrayList
對象。
ArrayList<Date> dates = new ArrayList<>();
for (String dateString : dateStrings) {
try {
dates.add(dateFormat.parse(dateString));
} catch (ParseException e) {
System.out.println(e);
}
}
排序您Date
對象使用Collections.sort()
(需要,因爲它按升序排序沒有Collections.reverseOrder()
比較)。
Collections.sort(dates);
最後將您Date
的ArrayList
對象放回String
的ArrayList
對象。
ArrayList<String> orderedDateStrings = new ArrayList<>();
for (Date date : dates) {
orderedDateStrings.add(dateFormat.format(date));
}
你現在有你需要的順序串的ArrayList
Strings
orderedDateStrings
。
不要忘記導入所有的java.util.ArrayList, java.util.Collections, java.util.Date, java.text.ParseException, java.text.SimpleDateFormat
。
轉換爲'LocalDate'並排序? –
但是有沒有從右向左閱讀的方法?這將會更容易。 –
你可以編寫自己的比較器 –