1
resposta

Desafio: hora da prática - ArrayLists, casting de objeto e instanceof (Parte 2)

Crie uma classe ContaBancaria com propriedades como número da conta e saldo. Em seguida, crie uma lista de contas bancárias com diferentes saldos. Utilize um loop para encontrar e imprimir a conta com o maior saldo.

package br.com.exercicio.modelo;

import java.text.DecimalFormat;

public class ContaBancaria {
    private int numeroConta;
    private double saldo;

    public ContaBancaria(int numeroConta, double saldo) {
        this.numeroConta = numeroConta;
        this.saldo = saldo;
    }

    public int getNumeroConta() {
        return numeroConta;
    }

    public double getSaldo() {
        return saldo;
    }

    @Override
    public String toString() {
        DecimalFormat df = new DecimalFormat("####.00");
        String saldoFormatado = df.format(this.getSaldo());
        return "Número da Conta: " + numeroConta + " - Saldo: R$" + saldoFormatado;
    }
}
package br.com.exercicio.principal;

import br.com.exercicio.modelo.ContaBancaria;

import java.util.ArrayList;

public class Principal {
    public static void main(String[] args) {

        ContaBancaria conta1 = new ContaBancaria(101, 2000.00);
        ContaBancaria conta2 = new ContaBancaria(102, 2400.00);
        ContaBancaria conta3 = new ContaBancaria(103, 1500.00);

        ArrayList<ContaBancaria> listaDeContas = new ArrayList<>();
        listaDeContas.add(conta1);
        listaDeContas.add(conta2);
        listaDeContas.add(conta3);

        listaDeContas.forEach(System.out::println);

        ContaBancaria maiorSaldo = listaDeContas.get(0);
        for (ContaBancaria contas : listaDeContas) {
            if (contas.getSaldo() > maiorSaldo.getSaldo()) {
                maiorSaldo = contas;
            }
        }

        System.out.println(String.format("\nConta com o maior saldo: Número: " + maiorSaldo.getNumeroConta() + " - Saldo: R$%.2f", maiorSaldo.getSaldo()));

    }
}

Saída:

Número da Conta: 101 - Saldo: R$2000,00
Número da Conta: 102 - Saldo: R$2400,00
Número da Conta: 103 - Saldo: R$1500,00

Conta com o maior saldo: Número: 102 - Saldo: R$2400,00

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Oi, Aline! Como vai?

Agradeço por compartilhar.

Gostei da sua solução, está bem estruturada e faz ótimo uso de ArrayList e loop for para identificar a conta com maior saldo. O uso do DecimalFormat também deixou a saída mais clara e organizada.

Continue praticando dessa forma, você está aplicando bem os conceitos de orientação a objetos e coleções.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!