Metodo Equals - Java
Eu preciso criar um metodo com a seguinte assinatura
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.
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
Curtidas 2
Melhor post
Marcio Souza
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.
GOSTEI 4
Mais Respostas
Andrey Silva
15/11/2018
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!
GOSTEI 1
Wendel Rios
15/11/2018
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.
GOSTEI 0