PDA

View Full Version : [JAVA] Ordinare una lista di oggetti in base ad un campo


e-commerce84
14-07-2011, 14:23
Ciao,

se io ho una lista di oggetti di tipo: ProcesPriorityMappingDTO, qualcosa del tipo:


List<ProcesPriorityMappingDTO> listaTipologieProcessi;


in cui ogni oggetto della lista ha tra le sue proprietà la variabilie priority di tipo Integer

Io vorrei ordinare tale lista in base ai valori della variabili priority (dal più piccolo al più grande)

C'è qualche modo pratico e veloce per farlo automaticamente o devo scrivermelo a mano?

Grazie
Andrea

Don[ITA]
14-07-2011, 14:58
Le vie più semplici sono:
-far implementare alla tua classe ProcesPriorityMappingDTO l'interfaccia Comparable (http://download.oracle.com/javase/6/docs/api/java/lang/Comparable.html)
-utilizzare il metodo statico della classe Collections (http://download.oracle.com/javase/6/docs/api/java/util/Collections.html), sort (http://download.oracle.com/javase/6/docs/api/java/util/Collections.html#sort(java.util.List, java.util.Comparator)):

...
Collections.sort(listaTipologieProcessi, new Comparator<ProcesPriorityMappingDTO>() {
int compare(ProcesPriorityMappingDTO p1, ProcesPriorityMappingDTO p2) {
return p1.<variabile che ti interessa> - p2.<variabile che ti interessa>;
}
}
...


cya