Stream<Integer> stream1 = Stream.of(1, 2, 3); Stream<String> stream2 = Stream.of("a", "b", "c"); Stream<Pair<Integer, String>> zipped = ZippedStream.of(stream1, stream2); zipped.forEach(System.out::println); ソースストリームが無限ストリームの場合は、生成されるストリームも無限ストリームになります。 ソースストリームに対して遅延バインディングでバインドしますので、(ソースストリームも遅延バインディングであれば、)終端操作の開始前までに大元のソースデータに対して行った変更は、ストリームの要素に反映されます。 また、生成されるストリームの Spliterator の各種特性2は、ソースストリ