The code (it’s a single class) is on pastebin:
https://pastebin.com/R5Sx07HC
This code is from an early build of Java 8 Beta. This was removed later and no zip function exists in the final Java 8 release. Here’s the source I used:
changeset 8789:569088178418.
There’s also a Discussion on Stackoverflow.
I added a very simple “Pair” class. You can just as well remove it and use javatuples instead.
And here’s some Example code:
import ch.claude-martin.zip.StreamZipper; import ch.claude-martin.zip.StreamZipper.Pair; // ... public static void main(String[] args) { Stream<Integer> a = IntStream.of(1, 2, 3).boxed(); Stream<String> b = Stream.of("a", "b", "c"); Stream<Pair<Integer, String>> zipped = StreamZipper.zip(a, b, Pair<Integer, String>::new); System.out.println(zipped.collect(Collectors.toList())); // Output: // [Pair(1, a), Pair(2, b), Pair(3, c)]}