1
resposta

lista.contains(cc3) retorna TRUE

Ao contrário do que foi mostrado na aula, meu console retorna true, como se eu tivesse incluído o cc3 na lista. Copiei o código na transcrição do vídeo para ficar exatamente igual, e mesmo assim retorna o true.

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

import java.util.ArrayList;

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

public class TesteArrayListEquals2 {

        public static void main(String[] args) {

        //Generics
        ArrayList<Conta> lista = new ArrayList<Conta>();

        Conta cc = new ContaCorrente(22, 11);
        lista.add(cc);

        Conta cc2 = new ContaCorrente(22, 22);
        lista.add(cc2);

        Conta cc3 = new ContaCorrente(22, 22);        
        boolean existe = lista.contains(cc3);

        System.out.println("Já existe? " + existe);

        for(Conta conta : lista) {
            if(conta == cc3) {
                System.out.println("Já tenho essa conta!");
            }
        }

        for(Conta conta : lista) {
                System.out.println(conta);
        }
    }
}

Console: Já existe? true ContaCorrente, Numero: 11, Agencia: 22 ContaCorrente, Numero: 22, Agencia: 22

1 resposta

Agora que percebi que isso se deu ao fato que tinha feito o download da aula anterior, mas que já tinha o método equals feito na aula. Da pra fechar o tópico.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software