cami-la / collections-java-api-2023

Este repositório é referente ao curso "Collection Framework API Java" e é uma valiosa contribuição para a comunidade de desenvolvedores Java, fornecendo exemplos práticos e recursos educacionais relacionados à poderosa API de coleções da linguagem Java.
https://web.dio.me/course/conhecendo-collections-java/learning/c5d6f4e1-6d05-4eea-93d8-d292c708999f
823 stars 596 forks source link

ObterProdutoMaisCaro #69

Open vallzin opened 1 month ago

vallzin commented 1 month ago

na minha implementação de código, não estou conseguindo obter o produto mais caro.

public Produto obterProdutoMaisCaro(){
        Produto produtoMaisCaro = null;
        double maiorPreco = Double.MIN_VALUE;
        for(Produto p : estoqueProdutoMap.values()){
            if(p.getPreco() > maiorPreco){
                produtoMaisCaro = p;
            }
        }
        return `produtoMaisCaro;`
    }
public static void main(String[] args) {
        EstoqueProduto estoque = new EstoqueProduto();

        System.out.println();
        estoque.exibirProdutos();

        estoque.adicionarProduto(123L, "caderno", 10, 10.0);
        estoque.adicionarProduto(145L, "borracha", 100, 3.5);
        estoque.adicionarProduto(155L, "lápis", 50, 5.0);
        estoque.adicionarProduto(489L, "ResmaPapel", 20, 20.0);

        System.out.println();
        estoque.exibirProdutos();
        System.out.println();
        System.out.println("O valor total do estoque é " + estoque.calcularValorTotalEstoque());
        System.out.println();
        System.out.println("O produto mais caro em estoque é " + estoque.obterProdutoMaisCaro());
    }

estou obtendo o retorno do lápis.

RESOLVIDO

public Produto obterProdutoMaisCaro(){
        Produto produtoMaisCaro = null;
        double maiorPreco = Double.MIN_VALUE;
        for(Produto p : estoqueProdutoMap.values()){
            if(p.getPreco() > maiorPreco){
                maiorPreco = p.getPreco();
                produtoMaisCaro = p;
            }
        }
        return `produtoMaisCaro;`
    }