- Comenzaremos creando la clase Test dentro de nuestro paquete útil. ¡No olvides poner el método main!.
- Ahora para ahorrar tiempo, podemos copiar el siguiente código disponible dentro de nuestro main: Cuenta cc1 = new CuentaCorriente(22, 33); cc1.depositar(333.0);
Cuenta cc2 = new CuentaAhorro(22, 44); cc2.depositar(444.0);
Cuenta cc3 = new CuentaCorriente(22, 11); cc3.depositar(111.0);
Cuenta cc4 = new CuentaAhorro(22, 22); cc4.depositar(222.0);
List lista = new ArrayList<>(); lista.add(cc1); lista.add(cc2); lista.add(cc3); lista.add(cc4);
3)Como hemos visto, necesitamos crear una clase que implemente la interfaz Comparator, lo haremos dentro del mismo archivo Test.java de la siguiente manera: class NumeroDeCuentaComparator implements Comparator {
@Override
public int compare(Cuenta c1, Cuenta c2) {
}
}
Al observar el retorno del método compare(), aprendemos cómo hacer nuestra comparación, que se verá así: class NumeroDeCuentaComparator implements Comparator {
@Override public int compare(Cuenta c1, Cuenta c2) { return Integer.compare(c1.getNumero(), c2.getNumero()); }
}
Ahora, en la clase Test, al final del método main, cree un objeto de la clase NumeroDeCuentaComparator y pase el comparator al método sort: NumeroDeCuentaComparator comparator = new NumeroDeCuentaComparator(); lista.sort(comparator);
Mostraremos en pantalla el resultado antes y después de ordenar de la siguiente manera: for (Cuenta cuenta : lista) { System.out.println(cuenta); }
NumeroDeCuentaComparator comparator = new NumeroDeCuentaComparator(); lista.sort(comparator);
System.out.println("---------");