Challenge: Build a Custom Collector for Category Counting
Task
Swipe to start coding
You need to implement a custom Collector that processes a list of products and counts how many products belong to each category.
- In the
supplier()method, return a newHashMap. - In the
accumulator()method, call theget()method on theproductmap to retrieve the value of the"category"key and pass it as the first parameter of themerge()method. - For the second parameter in the same method, provide the initial value (
1). - In the
combiner()method, pass thekeyofmap2as the first parameter of themerge()method. - For the second parameter in the same method, pass the
valueof themap2. - In the
finisher()method, return themapwithout modifying it using a lambda. - In the
characteristics()method, return a set that ensures the collection remains unchanged (IDENTITY_FINISH). - In the
collect()method, pass the implementation of theCollectorinterface (CategoryCountCollector).
Solution
solution.java
Everything was clear?
Thanks for your feedback!
SectionΒ 3. ChapterΒ 2
single
Ask AI
Ask AI
Ask anything or try one of the suggested questions to begin our chat
Suggested prompts:
Can you explain this in simpler terms?
What are some examples related to this topic?
Where can I learn more about this?
Awesome!
Completion rate improved to 2.33
Challenge: Build a Custom Collector for Category Counting
Swipe to show menu
Task
Swipe to start coding
You need to implement a custom Collector that processes a list of products and counts how many products belong to each category.
- In the
supplier()method, return a newHashMap. - In the
accumulator()method, call theget()method on theproductmap to retrieve the value of the"category"key and pass it as the first parameter of themerge()method. - For the second parameter in the same method, provide the initial value (
1). - In the
combiner()method, pass thekeyofmap2as the first parameter of themerge()method. - For the second parameter in the same method, pass the
valueof themap2. - In the
finisher()method, return themapwithout modifying it using a lambda. - In the
characteristics()method, return a set that ensures the collection remains unchanged (IDENTITY_FINISH). - In the
collect()method, pass the implementation of theCollectorinterface (CategoryCountCollector).
Solution
solution.java
Everything was clear?
Thanks for your feedback!
SectionΒ 3. ChapterΒ 2
single