Hola, tengo que hacer una practica de un almacen de poblaciones, en el cual, las poblaciones se almacenan en un set el cual esta asociado a un string que es la provincia a la que pertenecen, todo se guarda en un mapa en el que el string de la provincia es la clave y el Set es el valor, he codificado todos los metodos, para añadir poblaciones, quitarlas, guardarlo en un archivo, leerlo etc, pero ahora tengo este metodo:
public boolean ordenarPor
(String provincia,
int ordenarPor
)
al cual se le pueden pasar 2 constantes para ordenar por habitantes o por nombre de poblacion, llevo esto codificado:
public boolean ordenarPor
(String provincia,
int ordenarPor
) { if(provincia != null || ordenarPor != ORDENARPORNOMBRE || ordenarPor != ORDENARPORHABITANTES ){
if(ordenarPor == ORDENARPORNOMBRE){
Set<IPoblacion> spoblacion = Aprovincias.get(provincia);
System.
out.
println(spoblacion
); }else if(ordenarPor == ORDENARPORHABITANTES){
}
return true;
}
return false;
}
por defecto todas las poblaciones hacen uso del metodo CompareTo en el que digo que deben de ordenar las poblaciones por el valor nombre de cada una, pero lo que no se es como ordenarlas por otro valor, me he quedado otra clase en la que tambien implemento la interfaz compareTo y sobreescribo el metodo para ordenar por habitantes, pero no se utilizarlo