1
resposta

Carrinho de compras

import java.util.ArrayList;

public class Exercicios {
    public static void main(String[] args) {
        ItemCarrinho c1 = new ItemCarrinho();
        ItemCarrinho c2 = new ItemCarrinho();

        c1.nome = "Teclado";
        c1.preco = 120.0;
        c1.quantidade = 1;

        c2.nome = "Mouse";
        c2.preco = 60.0;
        c2.preco = 2;

        ArrayList<ItemCarrinho> list = new ArrayList<>();
        list.add(c1);
        list.add(c2);
        double totalCompra = 0;
        for (ItemCarrinho item : list) {
            totalCompra = totalCompra + item.valorDoItem();
        }

        System.out.println("Total da compra: R$ " + totalCompra);

    }
}
public class ItemCarrinho {
    String nome;
    double preco;
    int quantidade;
    double valor;

    public void valorDoItem() {
       valor = quantidade * preco;
    }

    public double getValor() {
        return valor;
    }
}
1 resposta

Oi, Bernardo! Como vai?

Você estruturou muito bem o uso de ArrayList e o laço for para somar os itens do carrinho. Um ponto importante é que o método valorDoItem() está como void, então ele não retorna nenhum valor para a soma. Além disso, no objeto c2, a linha c2.preco = 2; deveria ser c2.quantidade = 2;.

Uma dica interessante para o futuro é criar métodos que já retornem valores diretamente, deixando o código mais organizado. Veja este exemplo:


public double valorDoItem() {
    return quantidade * preco;
}

Nesse código, o método retorna o valor total do item multiplicando a quantidade pelo preço.

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