1
resposta

[Sugestão] Exercício sem número

Só uma observação: Entre os exercícios 5 e 6 há uma tarefa que não foi foi separada em seu próprio número de exercício (assim como não tem a sua solução revelada no "Ver opinião do instrutor"): "Filtre todos os produtos da categoria "Eletrônicos" com preço menor que R$ 1000, ordene-os pelo preço em ordem crescente e colete o resultado em uma nova lista."

Vale um pequeno ajuste no texto da atividade.

1 resposta

Ao meu entender é fazer um codigo: import java.util.ArrayList; import java.util.Comparator; import java.util.List; import java.util.stream.Collectors;

class Produto { private String nome; private String categoria; private double preco;

public Produto(String nome, String categoria, double preco) {
    this.nome = nome;
    this.categoria = categoria;
    this.preco = preco;
}

public String getNome() {
    return nome;
}

public String getCategoria() {
    return categoria;
}

public double getPreco() {
    return preco;
}

@Override
public String toString() {
    return "Produto{" +
            "nome='" + nome + '\'' +
            ", categoria='" + categoria + '\'' +
            ", preco=" + preco +
            '}';
}

}

public class Main { public static void main(String[] args) { List produtos = new ArrayList<>(); produtos.add(new Produto("Smartphone", "Eletrônicos", 999.99)); produtos.add(new Produto("Fone de Ouvido", "Eletrônicos", 199.99)); produtos.add(new Produto("Televisão", "Eletrônicos", 1500.00)); produtos.add(new Produto("Tablet", "Eletrônicos", 499.99)); produtos.add(new Produto("Câmera", "Eletrônicos", 1200.00)); produtos.add(new Produto("Smartwatch", "Eletrônicos", 899.99));

    List<Produto> produtosFiltrados = produtos.stream()
            .filter(p -> p.getCategoria().equals("Eletrônicos") && p.getPreco() < 1000)
            .sorted(Comparator.comparingDouble(Produto::getPreco))
            .collect(Collectors.toList());

    // Exibindo os produtos filtrados e ordenados
    for (Produto produto : produtosFiltrados) {
        System.out.println(produto);
    }
}

}

                                    Explicação do Código:

Classe Produto : Define a estrutura de um produto com atributos nome, categoriae preco. Lista de Produtos : Crie uma lista de produtos com alguns exemplos. Filtragem e Ordenação : Use stream()para processar a lista. Filtra produtos que pertencem à categoria "Eletrônicos" e têm preço menor que R$ 1000. Ordene os produtos filtrados pelo preço em ordem crescente. Coleta o resultado em uma nova lista. Exibição : Imprime os produtos filtrados e ordenados.