Metodo Equals - Java

15/11/2018

0

Eu preciso criar um metodo com a seguinte assinatura
public boolean existe (List x, Pessoa y)

e verifico nesse metodo se o objeto y esta em x. Mas o exercicio pede q consideremos dois objetos iguais os q possuem mesmo Cpf e Idade.
Minha duvida eh como q eu faco pro meu metodo equals comparar o cpf e a Idade ao msm tempo.
Wendel Rios

Wendel Rios

Responder

Post mais votado

16/11/2018

Você vai precisar fazer um for() na lista e testar cada um dos objetos Pessoa presente nela. Em cada posição da lista você compara o CPF e a Idade, quando forem iguais, retorne true.

Marcio Souza

Marcio Souza
Responder

Mais Posts

18/11/2018

Andrey Silva

Bom dia Wendel, o que o Ballem falou seria mais ou menos assim cara:

package equals;

import java.util.ArrayList;
import javax.swing.JOptionPane;

public class Equals {

    public static void main(String[] args) {
        
        Cadastro usuarios = new Cadastro();
        ArrayList <Cadastro> Array_usuarios = new ArrayList <Cadastro>();
        
        usuarios.setCpf("41431336870");
        usuarios.setSenha("1234");
        Array_usuarios.add(new Cadastro(usuarios));
        
        usuarios.setCpf("41431337040");
        usuarios.setSenha("12345");
        Array_usuarios.add(new Cadastro(usuarios));
        
        int statusLogin = 1;
        String validarCpf = (JOptionPane.showInputDialog(null, "Por favor digite seu CPF: "));         
        String validarSenha = (JOptionPane.showInputDialog(null, "Por favor digite sua senha: ")); 
        
        for(int i = 0; i < Array_usuarios.size(); i++){
            if(Array_usuarios.get(i).getCpf().equals(validarCpf) && Array_usuarios.get(i).getSenha().equals(validarSenha)){
                JOptionPane.showMessageDialog(null,"Login realizado com sucesso!");
                statusLogin = 0;
            }
        }
        if(statusLogin == 1){
                JOptionPane.showMessageDialog(null,"Usuario não encontrado!");
        }
    }
    
}


Se precisar de ajuda, manda o seu codigo ai, para gente entender como você ta fazendo, abraço!
Responder

20/11/2018

Wendel Rios

Na vdd a questao pedia pra ser verificado usando o contains, e visto que meu atributo Idade era do tipo int, por isso o equals n me deixava retornar true quando esse atributo fosse comparada. Minha solucao foi usar o tipo Integer q eh um objeto assim como String. Brigado pelas respostas.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar