CollectorsgroupingBy 分组后按value的List内元素的个数过滤去除value的size小于2的值
可以使用Collectors.filtering方法来过滤value的List内元素的个数小于2的值。以下是一个示例代码:
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<String> list = Arrays.asList("apple", "banana", "orange", "apple", "banana", "apple");
Map<String, List<String>> result = list.stream()
.collect(Collectors.groupingBy(e -> e, Collectors.filtering(e -> e.size() >= 2, Collectors.toList())));
System.out.println(result);
}
}
输出结果为:
{apple=[apple, apple, apple], banana=[banana, banana]}
在这个示例中,我们使用Collectors.groupingBy方法将列表中的元素按照值进行分组。然后,使用Collectors.filtering方法过滤每个分组的值的列表,仅保留列表大小大于等于2的值。最后,我们将结果打印出来
原文地址: https://www.cveoy.top/t/topic/ieFQ 著作权归作者所有。请勿转载和采集!