3
Implementing a Randomized Stream/Spliterator in Java – { 4Comprehension } (4comprehension.com)