当前位置: 首页 > 知识库问答 >
问题:

流已经运行或关闭-供应商没有帮助

沈单弓
2023-03-14
Supplier filteredSupplier = () -> Stream.of(filteredStream.toArray(Obj[]::new));
Stream.concat((Stream<Obj>)filteredSupplier.get(), Stream.of(objs)).forEach(some operation);

据我所知,如果您使用供应商,您可以通过在供应商上使用get()func来随时使用流。我仍然得到“流已经被操作或关闭”。

请帮助我理解,是否有任何限制使用流通过供应商以及??

共有1个答案

彭宏义
2023-03-14

在这一行

Supplier filteredSupplier = () -> Stream.of(filteredStream.toArray(Obj[]::new));

有两个流:FilteredStreamStream.of(...)返回的流。

供应商get方法的每次调用都将导致对stream.of(...)的调用,从而创建一个新流。但是,每个调用都将使用相同的FilteredStream。您的供应商在第二次调用时将无法工作,因为FilteredStream流在第一次调用期间“用完了”。

    Obj[] array = filteredStream.toArray(Obj[]::new);
    Supplier<Stream<Obj>> filteredSupplier = () -> Stream.of(array);
 类似资料:
  • 即使我在我的流中使用Supplier并在每次我想检索我的strem并对其执行终端操作时使用Supplier.get(),我仍然得到“Stream已经被操作或关闭”异常。有人能看看我的代码并建议我做错了什么吗? 引发异常的方法: 流供应商:

  • java-stream已被操作或关闭 与合作可以解决此问题。 所以我当前的代码如下: 相同的错误信息。

  • 方法是 现在我试着像这样改成stream,但我不知道这种改是否正确: 如何避免出现例外,解决问题? 我应该以某种方式重构代码吗?

  • 我想使用stream getfirst方法两次,但是出现了一个错误,即(java.lang.IllegalStateException:stream已经被操作或关闭),并且这个流代码以此处命名的注释开始。

  • #运营人求职交流聚集地# shein国际物流管培生一面挂了,国庆后收到hr联系面试供应商专员的岗位(主要是供应商运营),这个岗位面了两面,一面是hr面,二面是业务面(二面挂) 一面:10.12 全程约35分钟 1、自我介绍 略 2、详细说一下近两段实习的主要工作内容,以及有什么收获 3、对shein这个岗位是否了解?对shein这个公司的了解? 4、在xx公司管的sku有多少,直接对接的供应商类型