Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

ArrayList, metodo contains sempre retorna um true

package br.com.bytebank.Banco.Teste.util;

import java.util.ArrayList;

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

public class TesteArrayListEquals {

    public static void main(String[] args) {



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

        Conta cc = new ContaCorrente(33,333);
        lista.add(cc);        

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



        //contais devolve um boolean        
        boolean existe = lista.contains(cc);


                System.out.println(existe );


        for(Conta conta :lista) {

            System.out.println(conta);

        }

O meu método contains, sempre devolve um true, não consegui compreender o motivo

1 resposta
solução

Fala Luciano, tudo certo amigo?

Você criou uma conta corrente chamada cc:

Conta cc = new ContaCorrente(33,333);

Logo depois você adicionou essa conta cc no ArrayList chamado lista:

lista.add(cc);  

Logo, quando você verifica através do método contains da lista passando o elemento que deve ser verificado, o resultado será true, pois cc está dentro da lista:

lista.contains(cc);

certo? :)