Java 8中的收集器partitioningBy()方法

partioningBy()方法返回一个收集器,该收集器根据谓词对输入元素进行分区,并将它们组织成Map <Boolean,List <T >>。

语法如下。

static <T> Collector<T,?,Map<Boolean,List<T>>> partitioningBy(Predicate<? super T> predicate)

在这里,参数

  • T-输入元素的类型

  • 谓词-用于组织输入元素

要使用Java中的Collectors类,请导入以下包。

import java.util.stream.Collectors;

以下是partitioningBy()在Java中实现方法的示例。

示例

import java.util.Map;

import java.util.List;

import java.util.stream.Collectors;

import java.util.stream.Stream;

public class Demo {

   public static void main(String[] args) {

      Stream<Integer> stream = Stream.of(25, 50, 75, 100, 125, 150);

      //对于流元素50为true-

      Map<Boolean, List<Integer>> m = stream.collect(Collectors.partitioningBy(a -> a == 50));

      System.out.println("Stream = "+ m);

   }

}

输出结果

Stream = {false=[25, 75, 100, 125, 150], true=[50]}

以上是 Java 8中的收集器partitioningBy()方法 的全部内容, 来源链接: utcz.com/z/359467.html

回到顶部