Ver Mensaje Individual
  #6 (permalink)  
Antiguo 15/02/2019, 11:36
Avatar de detective_jd
detective_jd
 
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años
Puntos: 6
Respuesta: Implementando Comparator con objetos

Muchas gracias FuzzyLog y CargaryCorpus por responder, verán hasta intenté que me ordene por el cargo sólo para apelar al compareTo implementado en la clase Cargo:

Código Java:
Ver original
  1. package app.vista.util;
  2. import app.contr.clases.Persona;
  3. import app.vista.facade.FacadeContr;
  4. import java.util.Comparator;
  5. public class OrdenarPerXCD implements Comparator<Integer>
  6. {
  7.     @Override
  8.     public int compare(Integer o1, Integer o2) {
  9.         Persona p1 = FacadeContr.getInstance().ContrPersonas().findAll().get(o1);
  10.         Persona p2 = FacadeContr.getInstance().ContrPersonas().findAll().get(o2);
  11.         return p2.getCargo().compareTo(p1.getCargo());
  12.     }    
  13. }

Pero el resultado es el mismo, que me elimina a la persona anterior con el cargo repetido, sí tengo una función que me valida si una entrada con tal clave para evitar duplicados sólo que si ignoro esa función al ordenar me da este error:

Cita:
Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: Index 3 out-of-bounds for length 3
Y ahí me deja con cara de ¿que voy a a hacer?

Espero sus respuestas y saludos.
__________________
Si te interesa, visita mi perfil de Linkedin. Gracias