2
respuestas

No me compila el ejercicio de ORDENAR LISTAS

Buenos días a todos En el curso de JAVA, clase 7, Ordenando Listas, he hecho el ejercicio tal y como lo hace el profesor pero no me compila. Luego lo hice en el aparte cuando dice: haz lo que quisimos en clase, y siguiendo todo el código, sigue sin compilar.

package com.bytebank.test;

import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List;

import com.bytebank.modelo.Cliente; import com.bytebank.modelo.Cuenta; import com.bytebank.modelo.CuentaAhorros; import com.bytebank.modelo.CuentaCorriente;

public class TestOrdenarLista2 {

public static void main(String[] args) {

    Cuenta cc1 = new CuentaCorriente(22, 33);
    Cliente clienteCC1 = new Cliente();
    clienteCC1.setNombre("Nico");
    cc1.setTitular(clienteCC1);
    cc1.deposita(333.0);

    Cuenta cc2 = new CuentaAhorros(22, 44);
    Cliente clienteCC2 = new Cliente();
    clienteCC2.setNombre("Guillermo");
    cc2.setTitular(clienteCC2);
    cc2.deposita(444.0);

    Cuenta cc3 = new CuentaCorriente(22, 11);
    Cliente clienteCC3 = new Cliente();
    clienteCC3.setNombre("Paulo");
    cc3.setTitular(clienteCC3);
    cc3.deposita(111.0);

    Cuenta cc4 = new CuentaAhorros(22, 22);
    Cliente clienteCC4 = new Cliente();
    clienteCC4.setNombre("Ana");
    cc4.setTitular(clienteCC4);
    cc4.deposita(222.0);

    List<Cuenta> lista = new ArrayList();
    lista.add(cc1);
    lista.add(cc2);
    lista.add(cc3);
    lista.add(cc4);

    for (Cuenta cuenta : lista) {
        System.out.println(cuenta);
    }

    NumeroDeCuentaComparator comparator = new NumeroDeCuentaComparator(); // AQUI NO ME COMPILA
    lista.sort(comparator);

    System.out.println("------------");

    lista.sort(new TitularDeCuentaComparator());

    for(Cuenta cuenta : lista) {
        System.out.println(cuenta + ", " + cuenta.getTitular().getNombre());
    }

class NumeroDeCuentaComparator implements Comparator {

@Override
public int compare(Cuenta c1, Cuenta c2) {
    return Integer.compare(c1.getNumero(), c2.getNumero());
}

}

class TitularDeCuentaComparator implements Comparator {

@Override
public int compare(Cuenta c1, Cuenta c2) {
    String nombreC1 = c1.getTitular().getNombre();
    String nombreC2 = c2.getTitular().getNombre();
    return nombreC1.compareTo(nombreC2);
}

}

}

2 respuestas

Continuo: En el ejercicio que hace el profesor en los videos, que es muy parecido, tampoco me compilan en el mismo sitio

Comparator comparator = new OrdernadorPorNumeroCuenta(); //**aqui no se que pasa, esta escrito tal cual como lo hizo el profesor en la clase Ordenando Listas lista.sort(OrdernadorPorNumeroCuenta());

    System.out.println("Despues de ordenar");
    for(Cuenta cuenta : lista) {
        System.out.println(cuenta);
    }


    Comparator<Cuenta> comparatorNombreTitular = new OrdenadorPorNombreTitular(); ****Aqui tampoco me complila.  Si estan ambos, el anteriormente mostrado, y este, este no muestra error pero el de arriba si.  Si comento el de arriba, el error aparece en esta linea.  Llevo muchas horas revisando y comparando, pero no encuentro mi error.
    lista.sort(OrdenadorPorNombreTitular());


Me inquieta pensar que pudiera tener algun problema de configuraicón del Eclipse, o que falte alguna importación.

Agradezco si alguien me ayuda. Gracias Jaime Eduardo Botero Gómez

Hola Jaime, cómo estás?

Gracias por compartir tu pregunta en el foro, podrías compartirme el nombre del error que te aparece al ejecutar por favor?.

Si tienes alguna duda sobre el contenido de los cursos, estaremos aquí para ayudarte.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios