我正在制作一个应用程序,其中我在持久对象中长期存储许多日期。
我希望按照顺序列出这些长值,只要新值出现,在持久性中,我们的列表就会被排序。
有人可以帮助我吗?
答案 0 :(得分:4)
使用net.rim.device.api.util.SimpleSortingVector存储您的数据。
答案 1 :(得分:2)
就像oxigen说的那样,使用SimpleSortingVector ......乍一看并不简单!
您必须创建一个比较器类以传递到排序向量中。见例:
// Your hashtable with key value pairs
Hashtable data = getMyHashTableWithSomeDataInIt();
// Your sorting vector
SimpleSortingVector sorted = new SimpleSortingVector();
// Iterate through you hashtable and add the keys to the sorting vector
for (Enumeration e = data.keys(); e.hasMoreElements();)
{
String key = (String) e.nextElement();
sorted.addElement(key);
}
// Pass in the comparator and sort the keys
sorted.setSortComparator(new MyComparator());
sorted.reSort();
// Iterate through your sorted vector
for (Enumeration e = sorted.elements(); e.hasMoreElements();)
{
String key = (String) e.nextElement();
Object sortedItem = (Object) data.get(key);
// Do whatever you have to with the sortedItem
}
// Sort compartor for sorting strings
class MyComparator implements Comparator {
public int compare(Object k1, Object k2) {
return ((((String) k1).compareTo((String) k2)));
}
}