Sem utilizar o hashcode na classe Conta do exercício, quando adiciono o mesmo objeto conta duas vezes no HashSet, o objeto não esta sendo incluso, porque? Lembrando que quando adiciono outro objeto Conta, mesmo tendo o mesmo conteúdo nos atributos, ele aceita a duplicidade.
Segue o código:
package br.com.empresa.banco.conta;
import java.util.HashSet;
public class TestaHashCode {
public static void main(String[] args) {
HashSet<Conta> contas = new HashSet<Conta>();
Conta c1 = new ContaPoupanca(1000, 120,"Arcio");
Conta c2 = new ContaPoupanca(2000, 190,"Barcio");
Conta c3 = new ContaPoupanca(3000, 230,"Darcio");
Conta c4 = new ContaPoupanca(4000, 250,"Zarcio");
Conta c5 = new ContaPoupanca(5000, 300,"Jarcio");
Conta c6 = new ContaPoupanca(6000, 990,"Carcio");
Conta c7 = new ContaPoupanca(1000, 120,"Arcio");
Conta c8 = new ContaPoupanca(3000, 120,"Eita1");
contas.add(c1);
contas.add(c2);
contas.add(c3);
contas.add(c4);
contas.add(c5);
contas.add(c6);
contas.add(c7); //adicionando outro objeto com mesmo conteudo de c1 - inclui normlmente sem hashcode na classe conta
contas.add(c8);
contas.add(c1); //adicionando o mesmo objeto novamente - nao inclui mesmo sem hashcode em na classe conta
for (Conta conta : contas) {
System.out.println(conta.getNome());
}
}
}