Olá, boa noite!
Amigos, estou com uma dúvida quanto a verificação de propriedades em comum de objetos dentro de um ArrayList de um tipo, segue o código para melhor entendimento.
Classe Pessoa
public class Pessoa {
private String nome;
private int idade;
private double altura;
public Pessoa(String nome){
this.nome = nome;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
public double getAltura() {
return altura;
}
public void setAltura(double altura) {
this.altura = altura;
}
}
--------------------------------
Classe ListaPessoa
import java.util.ArrayList;
import java.util.Iterator;
public class ListaPessoa {
ArrayList<Pessoa> lista = new ArrayList<Pessoa>();
public void adicionar(Pessoa nomePessoa){
lista.add(nomePessoa);
}
public void lista(){
Iterator <Pessoa> i = lista.iterator();
while(i.hasNext()){
Pessoa pessoa = (Pessoa) i.next();
System.out.println("Nome: " + pessoa.getNome() + "\nIdade: " + pessoa.getIdade() + "\nAltura: " + pessoa.getAltura());
}
}
}
--------------------------------
Classe Main
public class Main {
public static void main(String[] args) {
ListaPessoa inserir = new ListaPessoa();
Pessoa pessoa1 = new Pessoa("Alan Queiroz");
Pessoa pessoa2 = new Pessoa("Fernando Santana");
Pessoa pessoa3 = new Pessoa("Gregório Cardoso");
pessoa2.setIdade(24);
pessoa1.setAltura(1.84);
pessoa3.setIdade(25);
pessoa3.setAltura(1.84);
inserir.adicionar(pessoa1);
inserir.adicionar(pessoa2);
inserir.adicionar(pessoa3);
inserir.lista();
}
}
=================
Nesse caso o que eu teria em comum em uma dessas três instâncias do tipo pessoa, seria o atributo altura do objeto pessoa1 e pessoa3. Então a minha dúvida é como utilizar o método contains para fazer essa verificação dentro de um ArrayList de Objetos ?
Desde já abradeço a todos.
Como comparar se existe algo em comum entre objetos dentro de um ArrayList?
A
1 Resposta
O método contains faz uso do método equals, é só sobrescrever equals da maneira desejada que o contains funcionará.
Criado 14 de outubro de 2012
Ultima resposta 15 de out. de 2012
Respostas 1
Participantes 2
Alura POO: o que é programação orientada a objetos? Aprenda os conceitos básicos da programação orientada a objetos, como classes, objetos, herança, encapsulamento e polimorfismo, com exemplos.
Casa do Codigo Inteligencia Artificial e ChatGPT: Da revolucao dos... Por Fabricio Carraro — Casa do Codigo