Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Desafio: Construir um Coletor Personalizado para Contagem de Categorias | Operações Terminais na Stream API
Stream API

bookDesafio: Construir um Coletor Personalizado para Contagem de Categorias

Tarefa

Swipe to start coding

Você precisa implementar um Collector personalizado que processe uma lista de produtos e conte quantos produtos pertencem a cada categoria.

  1. No método supplier(), retorne um novo HashMap.
  2. No método accumulator(), chame o método get() no mapa de product para recuperar o valor da chave "category" e passe-o como o primeiro parâmetro do método merge().
  3. Para o segundo parâmetro no mesmo método, forneça o valor inicial (1).
  4. No método combiner(), passe a key de map2 como o primeiro parâmetro do método merge().
  5. Para o segundo parâmetro no mesmo método, passe o value de map2.
  6. No método finisher(), retorne o map sem modificá-lo usando uma lambda.
  7. No método characteristics(), retorne um conjunto que garanta que a coleção permaneça inalterada (IDENTITY_FINISH).
  8. No método collect(), passe a implementação da interface Collector (CategoryCountCollector).

Solução

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 2
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

close

Awesome!

Completion rate improved to 2.33

bookDesafio: Construir um Coletor Personalizado para Contagem de Categorias

Deslize para mostrar o menu

Tarefa

Swipe to start coding

Você precisa implementar um Collector personalizado que processe uma lista de produtos e conte quantos produtos pertencem a cada categoria.

  1. No método supplier(), retorne um novo HashMap.
  2. No método accumulator(), chame o método get() no mapa de product para recuperar o valor da chave "category" e passe-o como o primeiro parâmetro do método merge().
  3. Para o segundo parâmetro no mesmo método, forneça o valor inicial (1).
  4. No método combiner(), passe a key de map2 como o primeiro parâmetro do método merge().
  5. Para o segundo parâmetro no mesmo método, passe o value de map2.
  6. No método finisher(), retorne o map sem modificá-lo usando uma lambda.
  7. No método characteristics(), retorne um conjunto que garanta que a coleção permaneça inalterada (IDENTITY_FINISH).
  8. No método collect(), passe a implementação da interface Collector (CategoryCountCollector).

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 2
single

single

some-alt