私はいくつかの小さなリストに分割したいリストa
を持っています。java8を使って述語でリストを分割する方法は?
「aaa」を含むすべての項目、「bbb」を含むすべての項目、およびいくつかの述語があります。
どうすればjava8を使用できますか?
私はこのpostを見ましたが、2つのリストにしか分割しません。
public void partition_list_java8() {
Predicate<String> startWithS = p -> p.toLowerCase().startsWith("s");
Map<Boolean, List<String>> decisionsByS = playerDecisions.stream()
.collect(Collectors.partitioningBy(startWithS));
logger.info(decisionsByS);
assertTrue(decisionsByS.get(Boolean.TRUE).size() == 3);
}
私はこの
postを見ましたが、それは、java 8
述語がブール値です。それはちょうど "真"と "偽"を持っています。あなたのケースでは、 'Function'と' Collectors :: groupingBy'を使うほうが良いでしょう。 – RealSkeptic