Sì, ho creato un array di 4 oggetti Libro.Originariamente inviato da Leon90tps
scusa ma tu nn hai creto un array in quel esempio??
- Nel mio caso: N oggetti Libro da ordinare secondo la proprietà "titolo" (un String).Originariamente inviato da Leon90tps
.... cmq sia io ho creato i 10 oggetti con un unica proprietà
- Nel tuo caso: N oggetti Person da ordinare secondo la proprietà "nome" (un String).
Vedi differenza, a parte ovviamente i nomi, a livello concettuale? Io no.
Se hai visto il compareTo() del mio Libro .....Originariamente inviato da Leon90tps
ora m manca di creare il metodo compareto
Quindi devi implementare tu l'algoritmo di ordinamento?? (e non usare un metodo già fatto).Originariamente inviato da Leon90tps
e un altra cosa, io nn devo utilizzare il metodo sort della classe array, ma devo ordinarlo tramite mergesort...!ovvero l'ordinamento per fusione...!
Bene, ok. Immagino farai un metodo apposito che riceve un array. Se hai visto il sort() (perlomeno quello "base") di java.util.Arrays è fatto così:
void sort(Object[] a)
e il metodo "sa" implicitamente che gli oggetti devono implementare Comparable (infatti fa dei cast a Comparable degli oggetti).
Tu potresti fare un metodo che riceve un generico Object[] o più specifico es. Person[] o un pelino più ampio come Comparable[]. Cambia poco, almeno a livello concettuale.
Il "tuo" metodo secondo il criterio dell'algoritmo scelto, farà tante comparazioni tra coppie di oggetti "sapendo" appunto che secondo Comparable deve prendere un oggetto, "vederlo" come Comparable e invocarci compareTo() passando come argomento un altro oggetto.
E quali/quante coppie, in quale progressione ... dipende appunto dall'algoritmo scelto.
Ora è un po' più chiaro? (spero qui di essere stato di aiuto)

Rispondi quotando