1
resposta

Titular cannot be resolved to a type

package br.com.bytebank.banco.test.util;

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

import br.com.bytebank.banco.modelo.Cliente; import br.com.bytebank.banco.modelo.Conta; import br.com.bytebank.banco.modelo.ContaCorrente; import br.com.bytebank.banco.modelo.ContaPoupanca;

public class Teste {

public static void main(String[] args) {



    Conta cc1 = new ContaCorrente(22, 33);
    Cliente clienteCC1 = new Cliente();
    clienteCC1.setNome("Nico");
    cc1.setTitular(clienteCC1);
    cc1.deposita(333.0);

    Conta cc2 = new ContaPoupanca(22, 44);
    Cliente clienteCC2 = new Cliente();
    clienteCC2.setNome("Guilherme");
    cc2.setTitular(clienteCC2);
    cc2.deposita(444.0);

    Conta cc3 = new ContaCorrente(22, 11);
    Cliente clienteCC3 = new Cliente();
    clienteCC3.setNome("Paulo");
    cc3.setTitular(clienteCC3);
    cc3.deposita(111.0);

    Conta cc4 = new ContaPoupanca(22, 22);
    Cliente clienteCC4 = new Cliente();
    clienteCC4.setNome("Ana");
    cc4.setTitular(clienteCC4);
    cc4.deposita(222.0);

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

    for (Conta conta : lista) {
        System.out.println("Titular:" + conta.getTitular() );
    }

    lista.sort(new Titular());

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

    for (Conta conta : lista) {
        System.out.println("Titular:" + conta.getTitular() );

    }
    class Titular  implements Comparator<Conta>{

        @Override
        public int compare (Conta c1, Conta c2) {
            String nomec1 = c1.getTitular().getNome();
            String nomec2 = c2.getTitular().getNome();

            return nomec1.compareTo(nomec2);
        }


    }





}}
1 resposta

Olá, Isac!

acredito que seja necessário fazer o ajuste das chaves que indicam abertura e fechamento das classes: as duas chaves que se encontram no final do código deveriam estar fechando a classe TesteComparator, como abaixo:

public static void main(String[] args) {



    Conta cc1 = new ContaCorrente(22, 33);
    Cliente clienteCC1 = new Cliente();
    clienteCC1.setNome("Nico");
    cc1.setTitular(clienteCC1);
    cc1.deposita(333.0);

    Conta cc2 = new ContaPoupanca(22, 44);
    Cliente clienteCC2 = new Cliente();
    clienteCC2.setNome("Guilherme");
    cc2.setTitular(clienteCC2);
    cc2.deposita(444.0);

    Conta cc3 = new ContaCorrente(22, 11);
    Cliente clienteCC3 = new Cliente();
    clienteCC3.setNome("Paulo");
    cc3.setTitular(clienteCC3);
    cc3.deposita(111.0);

    Conta cc4 = new ContaPoupanca(22, 22);
    Cliente clienteCC4 = new Cliente();
    clienteCC4.setNome("Ana");
    cc4.setTitular(clienteCC4);
    cc4.deposita(222.0);

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

    for (Conta conta : lista) {
        System.out.println("Titular:" + conta.getTitular() );
    }

    lista.sort(new Titular());

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

    for (Conta conta : lista) {
        System.out.println("Titular:" + conta.getTitular() );

    }

}}
    class Titular  implements Comparator<Conta>{

        @Override
        public int compare (Conta c1, Conta c2) {
            String nomec1 = c1.getTitular().getNome();
            String nomec2 = c2.getTitular().getNome();

            return nomec1.compareTo(nomec2);
        }


    }