2010-07-19 3 views
1

Я делаю приложение, в котором я храню много дат в долго сохраняющемся объекте.Как сортировать устойчивые данные?

Я хочу составить список этих длинных значений в порядке поступления, каждый раз, когда приходит новое значение, внутри сохранности наш список сортируется.

Может кто-нибудь мне помочь?

ответ

4

Используйте net.rim.device.api.util.SimpleSortingVector для хранения ваших данных.

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))); 
    } 
} 
Смежные вопросы