重複存在すれば true を返すCollectors

以前、リストの重複チェックとして、
oboe2uran.hatenablog.com
を書きました。

ここに書いたのは、全てユニークだったら true であり Booleam#logicalAnd を利用したものでした。

では、重複だったら true を返すCollectors にしたい場合は、、
logicalXor を使って

public static<T> Collector<T,?,Boolean> duplicatedElements(){
    Set<T> set = new HashSet<>();
    return Collectors.reducing(true, set::add, Boolean::logicalXor);
}

となります。