https://www.geeksforgeeks.org/collectors-groupingby-method-in-java-with-examples/
The groupingBy() method of Collectors class in Java are used for grouping objects by some property and storing results in a Map instance. In order to use it, we always need to specify a property by which the grouping would be performed. This method provides similar functionality to SQL’s GROUP BY clause.
Syntax:
public static Collector<T, ?, Map<K, List>> groupingBy(Function classifier)
Type Parameter: This method takes two type parameters:
<iframe data-google-container-id="2" data-is-safeframe="true" data-load-complete="true" frameborder="0" height="250" id="google_ads_iframe_/27823234/GFG_Desktop_PostContent_336x280_0" marginheight="0" marginwidth="0" scrolling="no" src="https://1a836bd7e66e1e79d593f05cf2234024.safeframe.googlesyndication.com/safeframe/1-0-40/html/container.html" title="3rd party ad content" width="300"></iframe>- T- It is the type of the input elements.
- K- It is the type the input elements to be converted.
Parameters: This method accepts two mandatory parameters:
- Function- It is the property which is to be applied to the input elements.
- Classifier- It is used to map input elements into the destination map.
Return value: It returns a collector as a map.
Below is the program implementation of groupingBy() method:
Program 1:
- Java
// Java program to demonstrate
// Collectors groupingBy() method
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
public class GFG {
public static void main(String[] args)
{
// Get the List
List<String> g
= Arrays.asList( "geeks" , "for" , "geeks" );
// Collect the list as map
// by groupingBy() method
Map<String, Long> result
= g.stream().collect(
Collectors.groupingBy(
Function.identity(),
Collectors.counting()));
// Print the result
System.out.println(result);
}
}
|
{geeks=2, for=1}
标签:Java,groupingBy,Collectors,java,Examples,input,method From: https://www.cnblogs.com/kungfupanda/p/16928907.html