Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Buscando no Set

Minha dúvida é se tem alguma outro método além do contains, pois ele retorna um boolean, e na aplicação que eu queria deveria voltar um objeto (conta) o qual eu estava buscando pelo numero (numeroConta). Teria uma maneira mais sucinta ou mais elegante digamos assim de fazer esta busca.

public Conta buscar(int numeroConta) throws ExcecaoBuscaNaoEncontrada, ExcecaoListaVazia {
        if (!conta.getContas().isEmpty()) {
        encontrado = false;
        conta.getContas().forEach((c) -> { if (numeroConta == c.getNumeroConta()) { retornoBusca = c;encontrado = true;}});
return retornoBusca;
}
3 respostas
solução

Paulo,

Você poderia utilizar um Map<K,V>() para que você pudesse obter o objeto "conta" a partir de uma chave de busca "número da conta".

Veja o exemplo abaixo:

        // Dados da conta (exemplo)
        Integer nroConta = 12345;
        Conta conta = new Conta();

        // Lista de contas
        Map<Integer, Conta> listaConta = new HashMap<Integer, Conta>();
        listaConta.put(nroConta, conta);

        Conta contaEncontrada = listaConta.get(12345);
        if ( contaEncontrada != null )
            System.out.println("Conta encontrada com sucesso! :)");
        else
            System.out.println("Conta não encontrada :(");

Veja os detalhes em https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html

Att.

Bispo.

Olá Paulo, tudo bem? Como sua dúvida foi solucionada, estou fechando o tópico, ok?

Qualquer coisa não hesite em abrir outro tópico :)

Ok Obrigado Daniel