Java - 实现我自己的Stream

时间:2017-05-25 15:12:50

标签: java stream java-8 java-stream

是否可以实现自定义流? 我想创建一个除IntStream或LongStream之外的StringStream。

我想添加额外的方法,比如storeToFile(path)。

我认为实现Stream需要做很多工作。标准实现是java.util.stream.ReferencePipeline,但我不能直接实例化它。 有一个简单的解决方案吗?

感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

听起来你想要Collector是自定义的,而不是Stream。您可以使用Stream创建Stream.of(),但是您需要收藏家。

storeToFile将是StoringToFileCollector或其他......

答案 1 :(得分:2)

是的,你可以创建任何你想要的流。

扩展界面BaseStream

public interface MyStream extends BaseStream<MyClass,MyStream>

然后实施

public class DefaultMyStream implements MyStream
{
    //...
}

在编写实现时,可能会交叉检查另一个流实现。

我不知道这样做有一个巨大的优势。也许有一个有效的用例。无论如何,这是可能的。