Stream流是Java8 API推出的新特性,极大的简化了我们遍历集合和筛选集合的操作,但是初次使用时极有可能出现错误。

异常如图所示:

异常意思:

Java中的“流已被操作或关闭”异常

出现该异常的原因:

在Java 8中,每个Stream类代表一个一次性使用的数据序列,并支持多个I / O操作。

流仅应操作一次(调用中间流或终端流)。如果Stream实现检测到正在重用Stream,则可能引发IllegalStateException。

每当在Stream对象上调用终端操作时,实例都会被消耗并关闭。

因此,只允许执行消耗Stream的单个操作,否则,我们将得到一个异常,指出该Stream已被操作或关闭。
简单描述: Stream API只能被消费一次,后续重复使用已建立的流会报异常!
(图中stream1.count()消费一次, stream1.filter()消费一次,所以报错!)

结局方法:

只消费一次!

或者
创建一个新的Stream流 ,使用不同的Stream流 来执行遍历操作 和得到 当前流中的元素个数。

java.lang.IllegalStateException: stream has already been operated upon or closed 异常相关推荐

  1. java.lang.IllegalStateException: stream has already been operated upon or closed

    1. 错误描述 static int [] intArr = new int[]{30,96,23,69,85,62,12,99,11}; IntStream intStream =Arrays.st ...

  2. 使用Stream流时报java.lang.IllegalStateException: stream has already been operated upon or closed错误

    Stream流是Java8 API推出的新特性,极大的简化了我们遍历集合和筛选集合的操作,但是初次使用时极有可能出现错误. 下面的代码按照常理来说看似是没有错误: public class Strea ...

  3. Stream流--java.lang.IllegalStateException: stream has already been operated upon or closed

    stream用了两次,forEach()已经进行了中止操作 终止操作符就是对数据进行收集或者消费的,数据到了终止操作这里就不会向下流动了,终止操作符只能使用一次.

  4. java程序报stream has already been operated upon or closed异常错误解决方案

    今天写业务的时候使用到了Stream流,用Stream流完成了list的统计和求和,但是划红线那一块我看着重复,于是把Stream流抽成了一个变量,最后导致报错. 下图是正确的写法. 解决方案: 每次 ...

  5. [Android Pro] java.lang.IllegalStateException: Fragment(XXFragment) not attached to Activity异常

    [Android Pro] java.lang.IllegalStateException: Fragment(XXFragment) not attached to Activity异常 参考文章: ...

  6. “Stream has already been operated upon or closed” Exception in Java

    1. Overview In this brief article, we're going to discuss a common Exception that we may encounter w ...

  7. Stream报错:stream has already been operated upon or closed

    Stream 有一个特点:只能使用一次 public class StreamUtils {public static void main(String[] args){StreamUtils.use ...

  8. 解决java.lang.IllegalStateException: getOutputStream() has already been called for this response

    简单的说:用了流之后关掉即可. 下面详细说明: 出现了java.lang.IllegalStateException: getOutputStream() has already been calle ...

  9. JDK8 stream toMap() java.lang.IllegalStateException: Duplicate key异常解决(key重复)

    测试又报bug啦 接到测试小伙伴的问题,说是一个接口不返回数据了,好吧,虽然不是我写的接口任务落到头上也得解决,本地调试了一下,好家伙,直接抛了个异常出来,这又是哪位大哥喝醉了写的代码... Exce ...

最新文章

  1. VirtualBox安装kali linux过程及安装后无法全屏问题解决方法(2)
  2. 涨姿势了!22 个拓展程序员技术与视野的国外网站,快添加进收藏夹!
  3. 携程基于Flink的实时特征平台
  4. OpenCV学习笔记六-提高对比度
  5. 关于Hyper-V备份的四大注意事项
  6. 类创建几种java_Java创建对象的几种方式
  7. BZOJ 3053 The Closest M Points
  8. Android NDK之JNI陷阱
  9. 控制终端, 用户登录、mail、hostname、随机数 (笔记)
  10. 导航猫连接Oracle
  11. postgresql注册表删除_彻底删除SQL Server注册表的方法
  12. 基于C/C++的弹出气泡框
  13. oracle12c配置文档,Oracle12C安装配置文档
  14. 计算机为什么设ip,怎么设置电脑ip
  15. 2010年10月20日
  16. javascript练习12:得到输入歌词中朋友出现的次数
  17. 常见模拟电路设计 三(含仿真) :文氏桥正弦波发生电路
  18. 景深决定照相机什么特性_2017自学考试《摄影基础》备考练习题及答案
  19. 如何在iTC设置App内购,这是一篇细致到代码都给你看的指南!
  20. 经历两个月茫然期后粪发图强,四面美团定级3-1,拿到35*16offer

热门文章

  1. 【国产替代】推动安全芯片产业国产化,华秋电子与华翼微达成合作!
  2. 安全芯片的用途及新场景
  3. Arduino与按钮,火警传感器,无源红外(PIR)传感器和酒精传感器
  4. Thinking in java 4th the pitfall of Generic
  5. Lipschitz条件
  6. 微信weixin://xxx 分析
  7. 计算机网络实验报告文件共享,实验报告局域网的文件共享、互联网的使用.doc...
  8. 让你相见恨晚的PS技巧分享
  9. python断点续传下载_Python 3 爬虫|第12章:并发下载大文件 支持断点续传
  10. Unity3D 的LookAt() 与 LookRotation()方法的比较