我有自定義對象包含日期,我動態創建並填充數據(名稱,日期等),並添加到列表中,並添加所有對象到列表中我想根據自定義對象的日期(從LATEST到OLDEST)對列表進行排序。 我如何在Java中實現它?自定義對象的排序列表包含在java中從最新到最早的日期
請給我提供一些示例示例的解決方案。
謝謝。
我有自定義對象包含日期,我動態創建並填充數據(名稱,日期等),並添加到列表中,並添加所有對象到列表中我想根據自定義對象的日期(從LATEST到OLDEST)對列表進行排序。 我如何在Java中實現它?自定義對象的排序列表包含在java中從最新到最早的日期
請給我提供一些示例示例的解決方案。
謝謝。
查找兩個日期之間的區別,你可以比較值。隱蔽日期,數值(長),比比較,而不是使用像減法等
公共類CompareObjects算術運算實現比較{
@Override
public int compare(classA c1, classA c2) {
long value1 = c1.getDate().getTime();
long value2 = c2.getDate().getTime();
if (value2 > value1) {
return 1;
} else if (value1 > value2) {
return -1;
} else {
return 0;
}
}
public static void main(String[] args) {
classA o1 = new classA();
o1.setDate(new Date());
classA o2 = new classA();
o2.setDate(new Date());
CompareObjects compare = new CompareObjects();
int i = compare.compare(o1, o2);
System.out.println(" Result : " + i);
}
}
或無需轉換就可以直接返回結果。
return c2.getDate()。compareTo(c1.getDate());
比較後可以使用Collection.sort方法來設置順序。
您需要實現自定義Comparator或實現Comparable。
欲瞭解更多詳情,請參閱這裏。
http://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html
http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html
以下是使用它們中的任的一些例子。
http://www.mkyong.com/java/java-object-sorting-example-comparable-and-comparator/
萬一鏈接變黑了,可能是直接在你的答案中添加鏈接摘錄? – rene
請提供您所做的一切。 –
比較器接口是你的答案... http://www.mkyong.com/java/java-object-sorting-example-comparable-and-comparator/ – TheLostMind
這將有所幫助。 http://www.thejavageek.com/2013/06/17/sorting-user-defined-objects-part-1/ –