questo è il mio metodo:
- Codice:
public List<Collare> ordinaLista(){
List<Collare> lista = new ArrayList<Collare>();
lista.addAll(this.list);
Collections.sort(lista);
return lista;
}
Praticamente ho definito una classe Cane, in cui ho scritto questo metodo, e al suo interno ho definito una lista di oggetti Collare
- Codice:
public class Cane {
private String nome;
private int eta;
private List<Collare> list;
public Cane(String nome, int eta){
this.nome = nome;
this.eta = eta;
this.list = new ArrayList<Collare>();
}
Inlotre la classe Collare implementa l'interfaccia Comparable
- Codice:
public class Collare implements Comparable<Collare>
e al suo interno ho definito il metodo compaTo
- Codice:
@Override
public int compareTo(Collare o) {
return this.colore.compareTo(o.colore);
}
Il mio problema è che il metodo
- Codice:
public List<Collare> ordinaLista()
- Codice:
@Test
public void test_OrdinaLista() {
Cane cane = new Cane("Bobby",1);
List<Collare> lista = new ArrayList<Collare>();
Collare c3 = new Collare("Arancione",2);
Collare c2 = new Collare("Bourdeaux",5);
Collare c1 = new Collare("Celeste",1);
lista.add(c1);
lista.add(c3);
lista.add(c2);
cane.ordinaLista();
assertEquals("Arancione",lista.get(0).getColore());
assertEquals("Bourdeaux",lista.get(1).getColore());
assertEquals("Celeste",lista.get(2).getColore());
}
questo test fallisce.Potreste aiutarmi?
Grazie in anticipo.