Originariamente inviato da anseg
Codice PHP:
public class Item implements Comparable<Item
implemento un comparable per gestire i miei record....
dopodichè effettuo un ordinamento utilizzando mergesort per via della sua complessità...
Quindi hai, presumo, un ArrayList<Item> (o simile ... comunque un List). Per l'ordinamento nota che basta sort() di Collections!

Per stabilire l'ordinamento .... è davvero semplice. Faccio l'ipotesi che il tuo Item abbia almeno i metodi es. getCodice() e getNome(), entrambi restituiscono String.

codice:
public int compareTo(Item altro) {
    int r = getCodice().compareTo(altro.getCodice());

    if (r != 0) {
        return r;
    }

    return getNome().compareTo(altro.getNome());
}
Se i 2 codici sono diversi, avrai già dal primo compareTo un <0 o >0. Se sono uguali, avrai 0, pertanto confronti il nome. Tutto qui!