2013-04-30 42 views
0

我想排序一個celltable的最後一個添加在上面,現在,要做到這一點,我需要按他們被添加到應用程序的日期排序。有沒有辦法得到這個日期?或者我必須爲每個班級創建一個新的屬性?謝謝!如何獲得一個實體持續的日期

回答

1

您需要創建自己的屬性。

+0

是的,我做到了這個辦法。謝謝! – fguespe 2013-05-03 18:38:58

0

如果我很好理解,可以使用比較器。例如,假設你有一些CLAS到gwt.shared.model包,如:

public class SomeClass implements IsSerializable { 

    private Date date; 

    // some stuff... 

} 

然後,執行該類

import java.util.Comparator; 

public class SomeClassComparator implements Comparator<SomeClass> { 

@Override 
public int compare(SomeClass someObject1, SomeClass someObject2) { 
     if (someObject1.getDate().getTimeInMillis() > someObject2.getDate().getTimeInMillis()) return 1 
     else if someObject1.getDate().getTimeInMillis() > someObject2.getDate().getTimeInMillis() return 0; 
     else return 0; 
} 

} 

比較對象添加到您必須執行表之前:

List<SomeClass> someObjects = ... // list of objects 
Collection.sort(someObjects); 

然後你可以在細胞表中顯示它們。

編輯1:比較必須包含在gwt.shared.model

+0

這很棒,但我必須實現Comparable而不是Comparator。它接縫Collections.sort()是可比的,當你有向量排序。 – fguespe 2013-05-03 18:39:51

+1

明白了(我認爲),你正試圖給出可比較的行爲,而不是通過方法對實例進行排序,可能會是什麼? – 2013-05-03 20:44:27

相關問題