[URGENTe]Localizar e Excluir um objeto dentro de um hashset

Boa tarde, sou novato em desenvolvimento de Java, estou tendo difuldades em compreender a utilização de Collections junto com classes

tenho a seguinte classe para armezenar um objeto

public class Controle extends HashSet{
public void inserePessoa(Pessoa p){
this.add§;
}

em minha classe main() chamo a função inserePessoa da seguinte forma:

Pessoa p1 = new Pessoa(“Joao”,“55-221”,21,1000);
controle.inserePessoa(p1);

Pessoa p2 = new Pessoa(“Pedro”,“55-222”,21,2000);
controle.inserePessoa(p2);

Qual o procedimento para Localizar e Excluir o objeto p1 da minha collection?

Opa.

Cara, remover um elemento do HashSet é simples, apenas utilize o método remove(Object o). Se não houver esse elemento no HashSet ele não remove. Se você quiser testar antes se o elemento existe utilize o método contains.

Não sei o que você pretende, mas você nem precisa herdar do HashSet pra trabalhar assim (talvez fosse interessante herdar se você quisesse adicionar comportamentos mais específicos de buscas, adição e tal).

Exemplo:

Set<Pessoa> pessoas = new HashSet<Pessoa>();
Pessoa p1 = new Pessoa("Joao", "55-221", 21, 1000);
Pessoa p2 = new Pessoa("Pedro", "55-222", 21, 2000);

pessoas.add(p1);
pessoas.add(p2);

pessoas.remove(p1);

System.out.println( pessoas.contains(p1) ); //deve retornar false

Falou!

wagnerfrancisco
utilizando a função remove(object) é tranquilo mesmo

Mas digamos que eu tenha 50 objetos do tipo pessoa armazenados dentro do hashSet, e eu não sei qual o nome das instancia dos objetos para remover


a minha classe pessoa esta estruturada da seguinte forma:

public class Pessoa {
String nome;
String telefone;
Integer matricula;
Integer salario;

            public Pessoa(String nome, String telefone, Integer matricula, Integer salario){
	this.nome = nome;
	this.telefone = telefone;
	this.matricula = matricula;
	this.salario = salario;
}
    
           get/set....

}

como eu poderia encontrar um objeto dentro do meu hashSet? e apos encontralo, como remove-lo?
Digamos que o sistema ira solicitar que o usuario informe a matricula da pessoa para efetuar a exclusão(é so um exemplo) é possivel efetua um procedimento assim?

ola,
sobrescreva o metodo equals da classe pessoa e diga quando um pessoa é igual, use o metodo remove da hash e seja feliz.

[]´s

Ola

Sobrescrever o metodo equals, de qualquer forma eu terei que passa como paramentro um objeto do tipo pessoa?!?

public boolean equals(Object obj) {
	if(obj instanceof Pessoa) {
		if(((Pessoa)obj).getMatricula().equals(this.getMatricula())) {				
			return true;
		} else {			
			return false;
		}
	} else {
		return false;
	}
}

Teria algum exemplo utilizando este procedimento?