Java / Java8 streams
Explain Java8 Collectors partitioningBy method.
Java 8 Collectors.partitioningBy method accepts a predicate and returns a Collector by partitioning the element of the stream using Predicate so it will have 2 keys at most in Map. The key of the map can be only true and false and each key's value is a list of elements.
public static <T> Collector<T,?,Map<Boolean,List<T>>> partitioningBy(Predicate<? super T> predicate)
Consider the below example. This program checks if each item of list1 exists in list2 and partition with predicate.
public class PartitioningByEx1 { public static void main(String[] args) { List<String> list1 = Arrays.asList("A", "B", "C", "D"); List<String> list2 = Arrays.asList("A", "D", "E"); list1.stream().collect(Collectors.partitioningBy(item -> list2.contains(item))) .forEach((key, val) -> System.out.println(key + "-->>" + val)); } }
Output:
false-->>[B, C] true-->>[A, D]
Invest now in Acorns!!! 🚀
Join Acorns and get your $5 bonus!
Acorns is a micro-investing app that automatically invests your "spare change" from daily purchases into diversified, expert-built portfolios of ETFs. It is designed for beginners, allowing you to start investing with as little as $5. The service automates saving and investing. Disclosure: I may receive a referral bonus.
Invest now!!! Get Free equity stock (US, UK only)!
Use Robinhood app to invest in stocks. It is safe and secure. Use the Referral link to claim your free stock when you sign up!.
The Robinhood app makes it easy to trade stocks, crypto and more.
Webull! Receive free stock by signing up using the link: Webull signup.
More Related questions...
